Appliquer un temps Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 158
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 24 mai 2019, 13:48

Bonjour! :mrgreen:
Je souhaite, en fonction du contenue d'une cellule, afficher un temps dans un autre, malheureusement ça me met toujours 1h peu importe ce qu'il y a dans la cellule... :lole:
Voici le code:

If Sheets("Demande").Range("E4").Value = "Circularité" Or Sheets("Demande").Range("E4").Value = "Rugosité" Then
Sheets("Demande").Range("H4").Value = Format(Time, "h:mm;@") 'Donne le bon format à la cellule
Sheets("Demande").Range("H4").Value = CDate("00:30:00") 'Donne le temps de mesure attendu
ElseIf Sheets("Demande").Range("E4").Value = "Longueur/Angle" Then
Sheets("Demande").Range("H4").Value = Format(Time, "h:mm;@") 'Donne le bon format à la cellule
Sheets("Demande").Range("H4").Value = CDate("00:45:00") 'Donne le temps de mesure attendu
Else
Sheets("Demande").Range("H4").Value = Format(Time, "h:mm;@") 'Donne le bon format à la cellule
Sheets("Demande").Range("H4").Value = CDate("01:00:00")

End If
Je vous met le fichier ici, ça se passe dans le code de la userform :)
Affichage résultat mesures S4i V4.xlsm
(178.43 Kio) Téléchargé 2 fois
Avatar du membre
GGautier
Membre dévoué
Membre dévoué
Messages : 610
Appréciations reçues : 27
Inscrit le : 18 décembre 2018
Version d'Excel : 2016 FR

Message par GGautier » 24 mai 2019, 14:07

Salut :)
Essaye comme ça ;;)
Sub test()

If Sheets("Demande").Range("E4") = "Circularité" Or Sheets("Demande").Range("E4").Value = "Rugosité" Then
Sheets("Demande").Range("H4") = Format(Time, "h:mm;@") 'Donne le bon format à la cellule
Sheets("Demande").Range("H4") = CDate("00:30:00") 'Donne le temps de mesure attendu
Exit Sub
End If

If Sheets("Demande").Range("E4") = "Longueur/Angle" Then
Sheets("Demande").Range("H4") = Format(Time, "h:mm;@") 'Donne le bon format à la cellule
Sheets("Demande").Range("H4") = CDate("00:45:00") 'Donne le temps de mesure attendu
Else
Sheets("Demande").Range("H4") = Format(Time, "h:mm;@") 'Donne le bon format à la cellule
Sheets("Demande").Range("H4") = CDate("01:00:00")
End If

End Sub
"Il n'y a pas de question idiote, seulement une réponse idiote" ALBERT EINSTEIN (enfin ici on évite). 8-)
Vous cherchez des réponses à vos questions ? regardez par ici ;) http://boisgontierjacques.free.fr/index2.htm
Avatar du membre
GGautier
Membre dévoué
Membre dévoué
Messages : 610
Appréciations reçues : 27
Inscrit le : 18 décembre 2018
Version d'Excel : 2016 FR

Message par GGautier » 24 mai 2019, 14:09

La même chose en simplifié :
If Sheets("Demande").Range("E4") = "Circularité" Or Sheets("Demande").Range("E4").Value = "Rugosité" Then
Sheets("Demande").Range("H4") = Format(TimeValue("00:30:00"), "h:mm;@")
Exit Sub
End If

If Sheets("Demande").Range("E4") = "Longueur/Angle" Then
Sheets("Demande").Range("H4") = Format(TimeValue("00:45:00"), "h:mm;@")
Else
Sheets("Demande").Range("H4") = Format(TimeValue("01:00:00"), "h:mm;@")
End If
"Il n'y a pas de question idiote, seulement une réponse idiote" ALBERT EINSTEIN (enfin ici on évite). 8-)
Vous cherchez des réponses à vos questions ? regardez par ici ;) http://boisgontierjacques.free.fr/index2.htm
Avatar du membre
GGautier
Membre dévoué
Membre dévoué
Messages : 610
Appréciations reçues : 27
Inscrit le : 18 décembre 2018
Version d'Excel : 2016 FR

Message par GGautier » 24 mai 2019, 14:12

Encore une autre possibilité :
Dim f As Worksheet
Set f = Sheets("Demande")

If f.Range("E4") = "Circularité" Or f.Range("E4").Value = "Rugosité" Then
f.Range("H4") = Format(TimeValue("00:30:00"), "h:mm;@")
Exit Sub
End If

If f.Range("E4") = "Longueur/Angle" Then
f.Range("H4") = Format(TimeValue("00:45:00"), "h:mm;@")
Else
f.Range("H4") = Format(TimeValue("01:00:00"), "h:mm;@")
End If
"Il n'y a pas de question idiote, seulement une réponse idiote" ALBERT EINSTEIN (enfin ici on évite). 8-)
Vous cherchez des réponses à vos questions ? regardez par ici ;) http://boisgontierjacques.free.fr/index2.htm
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 158
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 24 mai 2019, 14:23

Mon sauveur d'hier de retour! :lol:
J'ai essayé mais malheureusement ça me met toujours 1h dans tous les cas :bof:
Avatar du membre
GGautier
Membre dévoué
Membre dévoué
Messages : 610
Appréciations reçues : 27
Inscrit le : 18 décembre 2018
Version d'Excel : 2016 FR

Message par GGautier » 24 mai 2019, 14:26

Argggg :noon: J'ai pourtant testé ....
Oui c'est encore moi :lole:
"Il n'y a pas de question idiote, seulement une réponse idiote" ALBERT EINSTEIN (enfin ici on évite). 8-)
Vous cherchez des réponses à vos questions ? regardez par ici ;) http://boisgontierjacques.free.fr/index2.htm
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 158
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 24 mai 2019, 14:29

Ah bon? Tu l'as mis ou? :lole: J'ai remplacé exactement le code que je t'avais envoyé par le tiens et j'ai eu 1h :lole:
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 158
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 24 mai 2019, 14:52

Je pense avoir compris le problème, la partie juste au dessus du code introduit dans la cellule E4 toutes les CheckBox cochée avec un espace, tu sais comment contourner ça? :lole:
Avatar du membre
GGautier
Membre dévoué
Membre dévoué
Messages : 610
Appréciations reçues : 27
Inscrit le : 18 décembre 2018
Version d'Excel : 2016 FR

Message par GGautier » 24 mai 2019, 14:56

Et ça ? :
Dim f As Worksheet
Set f = Sheets("Demande")


If Me.CheckBox12 = True Or Me.CheckBox13 = True Then
f.Range("H4") = Format(TimeValue("00:30:00"), "h:mm;@")
End If

If Me.CheckBox14 = True Then
f.Range("H4") = Format(TimeValue("00:45:00"), "h:mm;@")
End If

If Me.CheckBox12 = False And Me.CheckBox13 = False And Me.CheckBox14 = False Then
f.Range("H4") = Format(TimeValue("01:00:00"), "h:mm;@")
End If
"Il n'y a pas de question idiote, seulement une réponse idiote" ALBERT EINSTEIN (enfin ici on évite). 8-)
Vous cherchez des réponses à vos questions ? regardez par ici ;) http://boisgontierjacques.free.fr/index2.htm
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 158
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 24 mai 2019, 15:00

Oui ça marche! :mrgreen: Super! Pas bete de passer par les CheckBox directement! ;;) Ca va bien me servir! Merci encore! :mrgreen: :mrgreen: :mrgreen:
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message