numéro de ligne

  • Initiateur de la discussion zorra
  • Date de début
Z

zorra

Guest
Cette procédure récupère le numéro de la ligne
Sub num_ligne()
Range("A1") = ActiveCell.Row
End Sub

mais voilà si on encode l'appui sur
Enter ou flèche bas : le numéro de ligne est incrémenté de 1
alors que si on appuie sur flèche droite ou Tab c'est OK
Comment différencier l'appui sur une ou plusieurs touches?
 
Z

zorra

Guest
Merci de me répondre,
Je voudrai tester l'entrée d'une valeur dans une cellule ( 0 ou 1) mais l'opérateur peut appuyer ou sur Enter ou flèche bas ou flèche droite etc.. suivant les habitudes de chacun !! et activer une macro1 si O une macro2 si 1 mais j'ai absolument besoin de connaître le numéro de la ligne ( la colonne étant la colonne A ) où la valeur a été introduite ( problème comptable si on entre 0 transfert d'argent de compte à compte si on rentre 1 encodage facture )
Suis-je clair ?
Encore merci
 
L

Lord Nelson

Guest
Re Zorra,

Tu pourrais t'appuyer sur l'évènement "WorkSheet_Change" de la manière suivante :

Private Sub Worksheet_Change(ByVal Target As Range)
'Vérifions que nous sommes bien dans la colonne A
If Target.Column = 1 Then
'Y-a-t-il un zéro dans la cellule ?
If Target.Text = "0" Then
MsgBox "Lancer Macro1"
ElseIf Target.Text = "1" Then
MsgBox "Prêt à lancer Macro2"
End If
End If
End Sub

Si tu as besoin du numéro de ligne, tu le trouveras dans Target.Row

A+
Horatio
 

Discussions similaires