Bonjour,
Pour définir la plage sur la colonne A à partir de A1 :
With ActiveSheet: Set Plage = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
Pour définir la plage sur toutes la feuille sans trop savoir où elle finie, petite fonction :
Function DefPlage(Fe As Worksheet, Optional L As Long = 1, Optional C As Long = 1) As Range
On Error GoTo Fin
With Fe
Set DefPlage = .Range(.Cells(L, C), _
.Cells(.Cells.Find("*", .[A1], -4123, , _
1, 2).Row, .Cells.Find("*", .[A1], -4123, , _
2, 2).Column))
End With
Exit Function
Fin:
Set DefPlage = Nothing
End Function
que tu appelles de cette façon :
Set Plage = DefPlage(ActiveSheet, 5, 3)
où les arguments L (pour ligne) et C (pour colonne) sont facultatifs et qui ont comme valeurs par défaut 1 afin de commencer en A1 (ligne 1, colonne 1).
Dans mon exemple, la page sera définie à partir de C5 (5ème ligne et 3ème colonne)