[RESOLU] probleme dans Worksheet_SelectionChange(ByVal Target As Range)

charbsou

XLDnaute Nouveau
bonjour, jai un soucis avec ce code

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim Rep

If Not Application.Intersect(Target, Range("L18:L41, L44:L71, L74:L92, L95:L128, U18:U41, U44:U71, U74:U92, U95:U128"))
Is Nothing Then

ça me dit erreur de compilation. sachant qu'il me reste encore des colonnes a mettre (AD,AM,AV,BE,BP), est ce que quelqu'un aurai un truc pour limite la longueur de se code.

merci
 
Dernière édition:

Gorfael

XLDnaute Barbatruc
Re : probleme dans Worksheet_SelectionChange(ByVal Target As Range)

Salut charbsou et le forum
Utilise les balises de codes (icone # en mode avancé)
ça me dit erreur de compilation
??? J'ai fait la macro :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Rep As Variant

If Not Application.Intersect(Target, _
 Range("L18:L41, L44:L71, L74:L92, L95:L128, U18:U41, U44:U71, U74:U92, U95:U128")) Is Nothing Then

End If
End Sub
Aucune erreur !

S'il y a un problème de définition de range (de tête, 32 arguments, mais je peux me tromper et je suis sous V.2003), entre-les dans une variable Range, en plusieurs fois, avec Union(variable, suite de plage).
A+
 

Staple1600

XLDnaute Barbatruc
Re : probleme dans Worksheet_SelectionChange(ByVal Target As Range)

Bonjour


Utilises Union.
A adapter
Code:
Dim a As Range, b as Range
set a=Range("L18:L41, L44:L71, L74:L92")
Set b=Range("L95:L128, U18:U41")
If Not Application.Intersect(Target, Union(a,b)) Is Nothing Then

EDITION :Bonjour Gorfael

Re, Master Kjin (je sais plus dans quel fil on s'est déjà croisé ce jour)
 
Dernière édition:

charbsou

XLDnaute Nouveau
Re : probleme dans Worksheet_SelectionChange(ByVal Target As Range)

merci a vous deux, je viens de me rendre compte que je n'avais plus l'erreur precite, j'ai repris de zero le truc.
je vais utliser votre union et voir avec ça pour la suite

merci bien et bon dimanche.
 

kjin

XLDnaute Barbatruc
Re : probleme dans Worksheet_SelectionChange(ByVal Target As Range)

Bonjour, Staple :),
Il faut écrire de cette manière
Code:
If Not Intersect(Target, Range("L18:L41, L44:L71, L74:L92,L95:L128," & _
                               "U18:U41, U44:U71, U74:U92, U95:U128")) Is Nothing Then
MsgBox "coucou"
End If
Note que...
Code:
Select Case Target.Column
    Case 12, 21, 30, 39, 48, 57, 68
    Select Case Target.Row
    Case 18 To 41, 44 To 71, 74 To 92, 95 To 128
    MsgBox "coucou"
    End Select
End Select
...est correct aussi
A+
kjin
 

Discussions similaires

Statistiques des forums

Discussions
312 045
Messages
2 084 834
Membres
102 685
dernier inscrit
med_remi021