Bonjour à tous
J'ai une macro évènementielle
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Pour afficher UFrmProfilEleve en cliquant sur le nom de l'élève
ligne = Target.Row
If Target.Column = 2 Then 'limité à la colonne B
If Target = "" Then Exit Sub 'S'il n'y a pas de nom
With UFrmProfilEleve
.Caption = "Classe de " & [C2]
.LblNom.Caption = Range("B" & ligne)
'Perfs
.Lbl40mPerf.Caption = Range("D" & ligne)
.Lbl40mNote.Caption = Range("E" & ligne) & " /20"
.Lbl40mHPerf.Caption = Range("F" & ligne)
.Lbl40mHNote.Caption = Range("G" & ligne) & " /20"
'écarts
.LblEcart.Caption = Range("H" & ligne)
.LblNoteEcart.Caption = Range("J" & ligne) & " /20"
'Remarques sur les écarts
.LblRemarques.Caption = remarques
'affiche le formulaire
.Show
End With
End If
End Sub
qui réagit quand je clique sur une cellule, mais si par erreur,
l'utilisateur sélectionne plusieurs cellules, j'ai un message
"Incompatibilité de type" et la macro s'arrête en mode débogage sur la
ligne "If Target = "" Then Exit Sub".
Je n'arrive pas à créer la ligne de programme qui permettrait de
vérifier qu'une seule cellule a été sélectionnée, et dans le cas
contraire faire un Exit sub comme dans le cas où la cellule est vide.
J'espère avoir été clair. Merci de vos réponses
PS : "ligne" a été déclaré au niveau du module et "remarques" est une
fonction