Bonjour,
C et MonRange sont des plage de cellule(s), donc à déclarer en tant que Range. Ensuite, tu attribues ta plage avec une instruction Set.
Aussi, ta plage étant de taille connue, en ce qui me concerne, je préfère utiliser une boule For...Next
Ton code :
Sub Bouton1_Cliquer()
Dim C As Range, MonRange As Range
Set MonRange = ActiveSheet.Range("A1 : A20")
For Each C In MonRange
If C.Value <> "" Then MsgBox C.Offset(0, 1)
Next C
End Sub
Ma proposition :
Sub Bouton1_Cliquer()
Dim i As Byte
For i = 1 To 20
MsgBox Cells(i, 2).Value
Next i
End Sub