XL 2016 choix selon nombre de celulle selectionée

tinet

XLDnaute Impliqué
Bonjour le forum,

Je souhaite en vba faire une condition en fonction si je sélectionne une cellule ou deux à la fois
If SI condition vrai une celulle
'Instructions si vrai
Else '=> SINON
'Instructions si faux deux celulles
End If

Le champ de sélection et de ("I1:BN30")
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Tinet, Staple,
Un truc du genre :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Fin
    If Not Intersect(Target, [I1:BN30]) Is Nothing Then
        If Target.Count = 1 Then
            MsgBox "Une cellule sélectionnée :   " & Target.Address
        ElseIf Target.Count = 2 Then
            MsgBox "Deux cellules sélectionnées :   " & Target.Address
        End If
    End If
Fin:
End Sub
Code à mettre dans la feuille. Les 2 msgbox a supprimer et à remplacer.
 
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
Code:
Sub Test()
With Selection
    If .Row > 30 Or .Column < 9 Or .Column > 30 Then Exit Sub
    If .Cells.Count = 1 Then
        MsgBox "Une cellule sélectionnée :   " & .Address
    ElseIf .Cells.Count = 2 Then
        MsgBox "Deux cellules sélectionnées :   " & .Address
    End If
End With
End Sub
( modifiée car zonage oublié )
 
Dernière édition:

sylvanu

XLDnaute Barbatruc
Supporter XLD
ou encore en conservant la même structure:
VB:
Sub Test2()
If Not Application.Intersect(Selection, Range("I1:BN30")) Is Nothing Then
    With Selection
        If .Cells.Count = 1 Then
            MsgBox "Une cellule sélectionnée :   " & .Address
        ElseIf .Cells.Count = 2 Then
            MsgBox "Deux cellules sélectionnées :   " & .Address
        End If
    End With
End If
End Sub
 

Discussions similaires

Réponses
93
Affichages
2 K
Réponses
10
Affichages
417

Statistiques des forums

Discussions
312 108
Messages
2 085 375
Membres
102 876
dernier inscrit
BouteilleMan