1 pièce(s) jointe(s)
Fusionner un nombre de cellules variable
Bonjour,
Débutant en vba, je bloque sur un une partie de mon code qui fonctionne mal et qui est surement améliorable. Pour mieux comprendre mon problème, vous référer au fichier excel joint.
Je dois fusionner toutes les cellules qui commencent par "SG" avec les cellules vides qui suivent. Selon les "SG", le nombre de cellule à fusionner est aléatoire.
Ma boucle fonctionne, mais met beaucoup de temps à s'executer (elle tourne assez longtemps dans chaque groupe de cellules fusionnées) , j'ai surement raté quelque chose.
Voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| Sub Macro1()
lastRow = ActiveSheet.Cells(65536, 1).End(xlUp).Row
For i = 1 To lastRow
If Cells(i, 1).Value Like "SG*" Then Range(Cells(i, 1), Cells(i, 1).End(xlDown).Offset(-1, 0)).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Merge
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = True
End With
Next
End Sub |
Merci de votre aide !!