Rapport de message :*
 

Re: Activer une liste de validation sur un clic droit

Titre du sujet : Re: Activer une liste de validation sur un clic droit
par criscris11 le 05/06/2012 22:50:45

Re à tous,

Voici mes deux codes :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Count = 1 Then
    If Target.Value <> "" Then
      Transfert = Target
      If Transfert <> ActiveSheet.Name Then
        Application.EnableEvents = False
        Target.Resize(1, 69).Copy Sheets(Transfert).[A65000].End(xlUp).Offset(1, 0)
        Target.Resize(1, 69).Delete shift:=xlUp
        Application.EnableEvents = True
      End If
    End If
  End If
End Sub
Le premier permet de déplacer la ligne sélectionnée dans un autre onglet quand on clique en colonne A (sauf sur les 2 lignes d'entêtes).

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 5 And Target.Count = 1 And Target.Row > 2 Then
ActiveCell.Offset(0,18).Select
MsgBox "En cas de changement de grade, ne pas oublier de changer la date.", vbCritical, "Attention..."
End If
End Sub
quand au deuxième, le curseur va se positionner dans la colonne où la nouvelle date doit être saisie en cas de changement de valeur dans la cellule sélectionnée.

Donc si j'ai bien compris :
Private Sub Worksheet_Change(ByVal Target As Range)
    Select Case Target.Column
        Case 1 'L'utilisateur à sélectionner une cellule de la colonne A
            Mon premier code
        Case 5 'L'utilisateur à sélectionner une cellule de la colonne E
            SendKeys "%{DOWN}"
    End Select
End Sub
Reste juste une question : peut-on juste délimiter les Case pour ne pas agir sur les 2 lignes d'entêtes ?
Merci encore pour vos réponses et bonne soirée à tous.