Erreur VBA

Bonjour,

Quelqu'un peut il me dire l'erreur :

Function temps_moins_pauses(t As Variant) As Variant

Dim t1 As Variant

Dim t2 As Variant

t1 = Range("E9")
t2 = Range("F9")

If "14:00:00" = t1 Then
temps_moins_pauses = t - 0.00694444444
Else
temps_moins_pauses = t
End If

End Function

Merci

6 réponses

  1. Bonsoir,

    Application.Volatile sert à accélérer ou activer le calcul

    ensuite il serait bon bon d'avoir un bout de ton fichier anonymisé que l'on voit sa structure, il doit y avoir certainement un problème de format de nombre

    pour joindre un fichier, à partir de ce lien
    https://www.cjoint.com/
    0
    1. Bonsoir Mike-31,
      C'est certain qu'il s'agit de format (poste 4) sans la moindre réponse alors.....!
      Salutations
      Le Pingou
      0
  2. Ca ne fonctionne pas non plus...

    Je pense que Gyrus est proche avec TimeValue("14:00:00")
    Je ne sais pas a quoi sert le Application.Volatile...
    J'ai aussi essayé en remplacant 0.00694444444 par TimeValue("00:10:00") mais sans résultat.
    Si quelqu'un a une autre proposition , je suis preneur...
    0
    1. Bonjour,

      Essaie comme cela
      Function temps_moins_pauses(t As Variant) As Variant
      Dim t1 As Variant
      'Dim t2 As Variant
      Application.Volatile
      t1 = Range("E9")
      't2 = Range("F9")
      If TimeValue("14:00:00") = t1 Then
      temps_moins_pauses = t - 0.00694444444
      Else
      temps_moins_pauses = t
      End If
      End Function

      A+
      0
      1. j'utiliserai t2 plus tard...
        la fonction marche avec un nombre entier comme 2 par exemple mais pas avec une heure type 14:00:00..
        0
        1. Bonjour,
          Merci de votre réponse.
          Concerne : nombre entier, Il ne faut pas oublier ceci :
          Les années, mois et jours sont identifiées par les nombres entiers (base 1 = 01.01.1900)
          Et les heures, minutes et secondes quant à elles sont identifiées par les décimales de 0 à 0,99999 (exemple: 0.0104166666666667 = 15 minutes)
          Conséquence : pour chaque nombre entier le temps sera toujours de 00 :00 :00

          Salutations.
          Le Pingou
          0
      2. Bonjour,
        Quelle est le message d'erreur .... ?
        Quelle ligne du code est surlignée en jaune... ?
        A quoi vous sert le T2 .... Pas utilisé dans le code... ?

        0