Activer juste une partie des cases excel [Résolu]

Signaler
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007
-
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007
-
Bonjour,
afin de lancer une procédure quand je clique sur les cellule de ma page excel, j'utilise une variable Target as Range qui est ensuite utilisée dans la procédure.

Par contre j'aimerais que la procédure ne se lance pas quand je clique sur n'importe qu'elle cellule mais juste sur une zone définie : H11 à DD300

Afin de limité cette  zone, j'écris :
If  Target.Row "11" Or Target.Row "12" Then
cela me lance ma procédure que lorsque je clique sur des cellules de la logne 11 ou 12,  mais je dois aller jusqu'à la ligne 300 et je ne me vois pas écrire des centaine de fois Target.Row ="X"

j'ai essayé un truc du genre Target.Row > "11" ou Target.Row = "11:300" mais ca ne marche pas
quelqu'un a t'il une idée?
de même pour les colonnes, Target.Column "H" (ceci ne marche pas) , Target.Column "H:DD" (???)

J'espère que c'est pas trop confus, si quelqu'un a une idée......

Merci d'avance !

@+

Je viens de découvrir le bonheur de programmer et le VB me le rend bien

3 réponses

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
50
Salut,
Pas très propre mais tu peux t'en sortiur ainsi normalement

If (Target.Row >= 11) And (Target.Row <= 300) Then   'Colonne H 8 DD 108
   If (Target.Column >= 8) And (Target.Column <= 108) Then
       'ICI ta CELLULE EST DANS LA ZONE H11 DD300 normalement
       
   End If
End If , ----
[code.aspx?ID=41455 By Renfield]

NOTE: Row et Column ne sont pas des String donc inutile lors de la comparaison de mettre "11"

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Tu peux aussi utilier Intersect

    Dim Plage As Range
   
    Set Plage = Application.Intersect(Target, Range("H11:DD300"))
    If Plage Is Nothing Then
        MsgBox "En dehors"
    Else
        MsgBox "OK"
    End If

MPi
Messages postés
113
Date d'inscription
mercredi 9 mai 2007
Statut
Membre
Dernière intervention
28 août 2007

Merci à vous deux ca marche nickel.......

Je viens de découvrir le bonheur de programmer et le VB me le rend bien