Selection de plage dans un if/endif

Bonsoir,

j'ai une commande vba qui me permet de selectionner les 4 cellules à droite de la cellule que l'on selectionne :

Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Count > 1 Then Exit Sub

Target.Resize(1, 5).Select

End Sub

Ce que j'aimerai, c'est c'est effectuer cette opération seulement si les cellules D9 et D10 on pour valeur respective 1 et 2.

j'ai essayé :

Sub Worksheet_SelectionChange(ByVal Target As Range)

If Range("D9") = 1 And Range("D10") = 2 Then

If Target.Count > 1 Then Exit Sub

Target.Resize(1, 5).Select

End If

End Sub

Mais sa ne fonctionne pas...

Quelqu'un aurait une petite idée?

Salut,

Essaie

Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Count > 1 Then Exit Sub
If Range("D9") = 1 And Range("D10") = 2 Then
    Target.Resize(1, 5).Select
End If

End Sub

Cordialement.

non, sa ne fonctionne pas...

Bonsoir,

si je relis l'énoncé,

sélectionner les 4 cellules à droite de la cellule que l'on sélectionne :

essaye

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Range("D9") = 1 And Range("D10") = 2 Then
        Target.Offset(0, 1).Resize(1, 4).Select
    End If
End Sub

Claude

Salut Claude, Salut Vinsstama,

Vinsstama, je te remercie sincèrement pour tes remerciements qui me vont droit au cœur

Tu as dis que ton code fonctionnait, mais que tu désirais un complément.

Je t'ai fourni ce complément après l'avoir testé chez moi et je peux t'affirmer qu'il fonctionne parfaitement.

Bonnes salutations et merci encore.

NB : Sur la feuille 2, un code encore simplifié :

Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Range("D9") = 1 And Range("D10") = 2 Then Target.Resize(1, 5).Select
End Sub
11demo.xls (20.00 Ko)

Désolé Yvouille, c'est certainement moi qui est mal fait quelque chose car effectivement sa fonctionne tres bien sur ton fichier!

Merci beaucoup

Rechercher des sujets similaires à "selection plage endif"