Limiter macro à certaines cellules

Bonjour,

J'utilise cette macro pour lancer un calendrier pour les cellules qui sont en colonne 1

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Target.Column = 1 Then
mb.Show
End If
End Sub

Je voudrais maintenant limiter l'exécution ce cette macro au cellules B7 à B9.

Et bien j'ai beau triturer mes formules dans tous les sens, je sèche....

Qui peut m'aider à trouver le bon code?

Bonjour,

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Me.Range("B7:B9")) Is Nothing Then
        Cancel = True
        mb.Show
    End If
End Sub

Cordialement.

Bonjour,

À tester si ça convient...

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Not Intersect(Target, Range("B7:B9")) Is Nothing Then mb.Show
End Sub

ric

Bonjour,

Merci à tous les deux, les deux fonctionnent!

Je vais me pencher de plus près sur cette fonction intersect!!!

Bonne soirée!

Re,

Petite différence, et avec ta procédure initiale : avec Cancel = True, tu annules la fonction dévolue normalement au double-clic, qui est d'éditer la cellule.

Je l'ai replacé dans la condition, car il convient d'y procéder pour les cellules concernées par l'action, mais si tu places l'expression en dehors de la condition, tu annules l'effet normal du double-clic pour toutes les cellules de la feuille, ce qu'il n'y a aucun intérêt à faire.

Cordialement.

Rechercher des sujets similaires à "limiter macro certaines"