Macro - Saisie d'un temps selon une valeur

Bonjour,

Je souhaiterais créer une macro qui modifirai les valeurs d'une ligne (en durée) selon les valeurs d'une autre ligne (texte). Je voudrais quelque chose du style :

If Row(5) = "AM" Or "M" Or "N" Then
Row(6) = "08:00"
End If

Pourriez-vous m'aider ?

5vba-saisie-hs.xlsm (12.99 Ko)

Bonjour,

Je peux te proposer ceci :

Private Sub Worksheet_Change(ByVal Target As Range)

If (Target.Row = 5 Or Target.Row = 9) And Target.Column >= 3 And Target.Column <= 15 Then
    If Target = "M" Or Target = "N" Or Target = "AM" Then
        Target.Offset(1) = Format(CDate("08:00"), "hh:nn")
    End If
End If

End Sub

A mettre dans le code de ta feuille en elle même, s'effectue lors de la modification des cellules C5:O5 et C9:O9.

Tiens moi au courant !

A bientot!

Bonjour,

C'est tout à fait ce que je cherchais, merci !

Et du coup en partant de cela si je souhaite rajouter des conditions j'ai juste a reprendre les formules et créer une novuelle private sub ?

Par exemple, Si "J" alors Cdate("07:36"), Si R ou C ou xxx alors CDate ("00:00")

Non, il faut l'ajouter directement comme suit :

Private Sub Worksheet_Change(ByVal Target As Range)

If (Target.Row = 5 Or Target.Row = 9) And Target.Column >= 3 And Target.Column <= 15 Then
    If Target = "M" Or Target = "N" Or Target = "AM" Then
        Target.Offset(1) = Format(CDate("08:00"), "hh:nn")
    End If
    If Target = "R" Or Target = "C" Or Target = "xxx" Then
        Target.Offset(1) = Format(CDate("00:00"), "hh:nn")
    End If
    If Target = "J"  Then
        Target.Offset(1) = Format(CDate("07:36"), "hh:nn")
    End If
End If

End Sub

A bientot

Nickel !

Merci cela va me faire gagner du temps :D

Rechercher des sujets similaires à "macro saisie temps valeur"