Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Macro qui ne fonctionne plus

Erakmur

XLDnaute Occasionnel
Bonjour,
La macro en pièce jointe ne fonctionne plus.
A l'origine, il fallait cliquer sur la cellule F2 et déclencher la macro et chaque tache de la colonne F créée une ligne au lieu que toutes les taches soient dans la même cellule. A chaque fois qu'un retour à la ligne était détecté, une ligne se créée. Pouvez vous m'aider ?
 

Pièces jointes

  • test.xlsm
    43.3 KB · Affichages: 12

job75

XLDnaute Barbatruc
Bonjour Erakmur,

Voyez le fichier joint et cette macro affectée au bouton :
VB:
Sub Eclater()
Dim i&, s, ub%, j%
Application.ScreenUpdating = False
With ActiveSheet
    If .FilterMode Then .ShowAllData 'si la feuille est filtrée
    For i = .Range("F" & .Rows.Count).End(xlUp).Row To 2 Step -1
        s = Split(.Cells(i, 6), vbLf)
        ub = UBound(s)
        If ub > 0 Then
            .Rows(i + 1).Resize(ub).Insert 'insère les lignes
            For j = 0 To ub
                .Cells(i + j, 6) = s(j)
            Next j
            For j = 1 To 5
                .Cells(i, j).Resize(ub + 1).Merge 'fusionne les cellules
            Next j
        End If
    Next i
    .Rows.AutoFit 'ajustement hauteur
End With
End Sub
A+
 

Pièces jointes

  • Eclater(1).xlsm
    26.6 KB · Affichages: 4

job75

XLDnaute Barbatruc
Ce n'est pas une optimisation, on remplace la fusion de cellules par un copier-coller, fichier (2) :
VB:
            For j = 1 To 5
                '.Cells(i, j).Resize(ub + 1).Merge 'fusionne les cellules
                .Cells(i, j).Resize(ub + 1) = .Cells(i, j) 'copie-colle la 1ère cellule
            Next j
 

Pièces jointes

  • Eclater(2).xlsm
    26.7 KB · Affichages: 5

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…