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
| Option Explicit
Sub compter()
'Déclaration des variables
Dim Ws As Worksheet
Dim X As Long, Mil As Long, i As Integer
Dim TheCell As Range
'Initialisation des variables
'Si on manipule un objet (worksheet par exemple) il faut utiliser Set
Set Ws = ThisWorkbook.Sheets("Feuil1")
'Pour que With ... est une utilité, il faut ensuite placer des . devant les objet devant être complèter par l'objet spécifié par With (regarde l'aide)
With Ws
'Je retrancherais 1 pour tenir compte de l'entête de colonne
X = Application.WorksheetFunction.CountA(.Range("A1", .Cells(.Rows.Count, "A").End(xlUp))) - 1
Mil = Int(X / 2)
'On pointe la cellule en haut de la colonne
Set TheCell = .Range("A1")
'On boucle sur les valeurs de 2 à Mil et on tient compte du nombre de cellules fusionnées
For i = 2 To Mil
'On regarde si la cellule fait partie d'un groupe de cellules
Set TheCell = TheCell.Offset(TheCell.Offset(1).MergeArea.Count)
Next
'On ajoute une ligne a la suite
TheCell.Offset(1).Insert
'On ajoute le contenu
TheCell.Offset(1).Value = "Milieu"
End With
End Sub |