Comment puis corriger ce code, fait une erreur après effacement

Résolu
coupidon Messages postés 98 Statut Membre -  
coupidon Messages postés 98 Statut Membre -
Bonjour,

j'ai un petit programme que j'ai fait, le problème quand je veux corrigé ou effacer la saisi sur le textbox7 dans l'userform cela me fait une erreur de débogage, au niveau de la ligne
madate = DateAdd("d", TextBox7.Value, oldDate)
comment puis je corriger cette erreur d'effacement en faite.

Private Sub TextBox7_Change()

Dim oldDate As Date
Dim madate As Date

oldDate = CDate(Now())
madate = DateAdd("d", TextBox7.Value, oldDate)

TextBox6.Value = Format(madate, "dddddd")
End Sub

7 réponses

  1. coupidon Messages postés 98 Statut Membre 1
     
    En faite je fait un calcul de jour, le textbox7 est juste une valeur numérique.
    j'utilise now() pour faire le calcul.
    en ajoutant une valeur numérique cela me donne le jour sous le format exemple : vendredi 16 septembre 2016

    si aujourd'hui nous sommes le Mardi 13 septembre 2016
    avec le textbox7 je saisi 03 cela me donne comme réponse sur le textbox6
    vendredi 16 septembre 2016

    mais je voulais effacer la saisi si on se trompait du coup ta boucle fonctionne mais je n'ai plus le résultat sur le textbox6
    1
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      Avec explication ca devient plus simple a resoudre.

      Private Sub TextBox7_Change()
      
          Dim oldDate As Date
          Dim madate As Date
          
          If TextBox7 <> "" And IsNumeric(TextBox7) Then
              oldDate = CDate(Now())
              madate = DateAdd("d", TextBox7.Value, oldDate)
              TextBox6.Value = Format(madate, "dddddd")
          Else
              TextBox6 = ""
          End If
      End Sub


      Par contre si entree(s) de lettre, pas de correction sur textbox7
      0
  2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    s'assurer que TextBox7<>""
    0
  3. coupidon Messages postés 98 Statut Membre 1
     
    bonjour,
    je met cette formule ou du coup ?
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      Ben c'est a mettre dans un test If ..... Allons .....
      0
  4. coupidon Messages postés 98 Statut Membre 1
     
    ah, navré comme je débute sur vba j'ai pas encore toute la maîtrise de la programmation même si je connais sous excel les conditions si, et, ou...
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Re,

    avec quelques test sup:

    Private Sub TextBox7_Change()
    
        Dim oldDate As Date
        Dim madate As Date
        
        If TextBox7 <> "" And IsDate(TextBox7) And Len(TextBox7) = 10 Then
           oldDate = CDate(Now())
            madate = DateAdd("d", CDate(TextBox7.Value), oldDate)
            TextBox6.Value = Format(madate, "dddddd")
        End If
    End Sub
    0
    1. coupidon Messages postés 98 Statut Membre 1
       
      puis, lol
      mon problème est résolu, je peu maintenant effacer etc...

      j'ai du coup un autre problème qui apparait, c'est que sur mon textbox6, je n'ai plus l'affichage de la réponse du coup comme si la boucle if me bloque le résultat...
      0
      1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > coupidon Messages postés 98 Statut Membre
         
        Re,

        Comment entrez-vous la date en textbox7: 01/01/2016 ou 01/01/16 ou ??????
        0
  7. coupidon Messages postés 98 Statut Membre 1
     
    Je suppose que dans la ligne

    If TextBox7 <> "" And IsDate(TextBox7) And Len(TextBox7) = 10 Then

    le IsDate(TextBox7) soit mon problème qui empêche d'accomplir de résultat ?
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      Regardez ce que j'ai ecrit f894009 - 13 sept. 2016 à 14:29
      0
  8. coupidon Messages postés 98 Statut Membre 1
     
    J'avais pas vue le changement au dessus, chapeau cela fonctionne super c'est comme je voulais, avec le Isnumeric cela change tout.
    et d'avoir pensé à effacer la ligne du textbox6 si on refait la saisi parfait.
    merci de votre aide, c'est exactement ce que je voulais que cela fasse.
    0