pb de syntaxe intersect

pilou76

XLDnaute Occasionnel
Bonjour à tous
Comment remplacer le D50 par la dernière colonne et la dernière ligne

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect([D2:D50], Target) Is Nothing Then
MsgBox "coucou"
End If
End Sub

j'ai testé avec :
dercol = ActiveSheet.Range("A1").End(xlToRight).Column
derligne =AtiveSeet.Range("A5536").End(xlUp).Row

Mais je dois mal formuler ma syntaxe !
Merci à vous
 

pilou76

XLDnaute Occasionnel
Merci pour ta réponse Paf
Mon problème c'est que je ne connais, ni la ligne, ni la colonne de fin (variable selon les utilisateurs)
Par contre la colonne et la ligne du début, oui
J'ai bien rédigé :
ActiveSheet.Range("A65536").End(xlUp).Row
mais je n'arrive pas à formuler correctement
 

Paf

XLDnaute Barbatruc
re,

Je reprend différemment : si en colonne A et en colonne D on a le même nombre de lignes et si on a le même nombre de colonnes pour tout le tableau, vous pouvez utiliser derligne et dercol dans:


VB:
If Not Intersect(Range(Cells(2, 4), Cells(derligne, dercol)), Target) Is Nothing Then

NB: j'avais omis de supprimer .Select dans la proposition du post 2

A+

Edit : derligne et dercol doivent être initialisés avant leur utilisation
 

Discussions similaires

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote