Recopier une MFC sur une plage de taille variable en VBA

pharai

XLDnaute Nouveau
Bonjour,

J'ai joint un fichier exemple car assez dur à expliquer ...
Toute latitude est donnée aux modos pour modifier le titre du post !

Je cherche en VBA, quand je défusionne une plage de cellules (sélectionnées à la souris) à ce que toutes les cellules de la sélection récupèrent le formatage conditionnel que seule la 1ère cellule de la plage "défusionnée" conserve".

J'ai essayé de modifer ma macro "défusion" mais j'ai sûrement loupé une (ou plusieurs) étapes :

Code:
Sub defusion()
Dim RangeToCopyMFC As Range, X As Long

'Déprotection de la feuille active
ActiveSheet.Unprotect

Set RangeToCopyMFC = Selection.Cells
    With Selection
            .MergeCells = False
            .Locked = False
        For X = 1 To Selection.Cells.Count
            Selection.Cells(1, 1).Copy
            Selection.Cells(X).PasteSpecial Paste:=xlPasteAllMergingConditionalFormats, Operation _
        :=xlNone, SkipBlanks:=False, Transpose:=False
        Next X
        
    End With

'Reprotection de la feuille active sans mot de passe
ActiveSheet.Protect

End Sub

En sachant que ce n'est que le début de mes questions : je cherche pour l'instant seulement la "défusion" en vertical dans un tableau où toutes les MFC sont identiques dans toutes les cellules.
Mais j'aurai aussi besoin d'aide pour faire la même chose en "horizontal" (avec des MFC différentes toutes les colonnes ...).

Je remercie d'avance les personnes qui pourront me donner un coup de main
 

Pièces jointes

  • fusion-protection.xlsm
    20.2 KB · Affichages: 49

Discussions similaires

Réponses
2
Affichages
140

Statistiques des forums

Discussions
312 103
Messages
2 085 314
Membres
102 860
dernier inscrit
fredo67