Macro VBA pour défusionner et coller

Bonjour à tous,

Je recherche activement une macro VBA pour défusionner toutes les cellules du tableau et copier les données contenues à l'intérieur de la cellule fusionnées sur chacune des cellules fractionnées

merci par avance

bien cordialement

Bonjour Paul et bienvenu, bonjour le forum,

Peut-être comme ça :

Sub Macro1()
Dim CEL As Range 'déclare la variable CEL
Dim V As Variant 'déclare la variable V (Valeur)
Dim PL As Range 'déclare la variabler PL (PLage)

For Each CEL In ActiveSheet.UsedRange 'boucle sur toutes les cellules éditées CEL de l'onglet actif
    If CEL.MergeArea.Cells.Count > 1 Then 'condition : si la cellule est fusionnée
        Set PL = CEL.MergeArea 'définit la plage PL
        V = CEL(1, 1).Value 'définit la valeur de la première cellule de la plage
        CEL.UnMerge 'défusionne la cellule
        PL.Value = V 'renvoie la valeur V dans la plage PL
    End If 'fin de la condition
Next CEL 'prochaine cellule de la boucle
End Sub

Bonsoir Paul63, le forum,

[EDIT] Bonjour ThauThème

Un essai...au plus simple.......CTRL + E pour lancer la macro ...

Pas sur du résultat en colonne F pour n°FP 4785 et 452 puisque Produit non renseigné en F.(par défaut, je recopie la cellule du dessus).

Sub test()

Application.ScreenUpdating = False

 Set plage = Range("A2:H" & Range("H" & Rows.Count).End(xlUp).Row)
  For Each c In plage
   If c.MergeCells Then c.UnMerge
  Next c

    For i = 2 To Range("H" & Rows.Count).End(xlUp).Row
     For j = 1 To 7
      If Cells(i, j) = "" Then Cells(i, j) = Cells(i - 1, j)
     Next j
    Next i
   Range("B:B").Delete
   Range("A:A").NumberFormat = "m/d/yyyy h:mm"
End Sub

Cordialement,

bonsoir à tous,

merci pour votre aide, la macro répond à mes attentes,

A+

Rechercher des sujets similaires à "macro vba defusionner coller"