[VB6+Access] conserver les 0 pour la creation d'un identifiant

conserver les 0 pour la creation d'un identifiant [VB6+Access] - Programmation

Marsh Posté le 22-01-2002 à 12:24:28    

je n'arrive pas a conserver les 0 pour la creation d'un identifiant composer de l'année en cours ainsi que d'un numemro automatique.
 
exemple : "0200053" pour l'enregistrement n°53 de l'année 2002, avec mon code j'obtient 2053, je voudrait savoir comment faire pour conserver les 0.
 
If numauto < 10 Then
 MonTextbox = Right(Date, 2) + "0000" + numauto
 Else:
   If testnum < 100 Then
    MonTextbox = Right(Date, 2) + "000" + numauto
    Else:
      If testnum < 1000 Then
        MonTextbox = Right(Date, 2) + "00" + numauto
        Else:
          If testnum < 10000 Then
            MonTextbox = Right(Date, 2) + "0" + numauto
            Else:
              MonTextbox = Right(Date, 2) + numauto
          End If
      End If
   End If
End If
 
si je ne met pas de "" VB change automatiquement chaque suite de 0 par un seul 0, et si je met des && a la place des "", il change les chaine de 0 par &O0&
 
 :hello:


---------------
"Si l'homme descend du singe, il peut aussi y remonter."
Reply

Marsh Posté le 22-01-2002 à 12:24:28   

Reply

Marsh Posté le 22-01-2002 à 13:05:19    

Utilise Format$(numauto, "00000" ) pour garder les 0 non significatifs d'un nombre.
 
exple: Format$(53, "00000" ) => 00053
 
A+

Reply

Marsh Posté le 22-01-2002 à 15:42:35    

Merci "sylderon" ca marche mais g un truc de chelou :??:
 
 
voici mon nouveau code
 
If numauto < 10 Then  
MonTextbox = Format$(Right(Date, 2) + "0000" + numauto, "0000000" )  
Else:  
  If testnum < 100 Then  
   MonTextbox = Format$(Right(Date, 2) + "000" + numauto, "0000000" )  
   Else:  
     If testnum < 1000 Then  
       MonTextbox = Format$(Right(Date, 2) + "00" + numauto, "0000000" )  
       Else:  
         If testnum < 10000 Then  
           MonTextbox = Format$(Right(Date, 2) + "0" + numauto, "0000000" )
           Else:  
             MonTextbox = Format$(Right(Date, 2) + numauto, "0000000" )
         End If  
     End If  
  End If  
End If  
 
 
au lieu de 2053 j'obtient 0002053,  
 
 
le 02 de l'annee 2002 devient 2  
+
le 000 devient 0
+
le 53 du numauto
 
 
 
et si je remplace mon code par cette simple ligne sa fonctionne pour tout les numauto de 0 a 99999 :
 
MonTextbox = Format$(Right(Date, 2) + "00000" + numauto, "0000000" )
 
 
moi je pige que dalle et j'aime pas quand je pige pas sa vient ptet du fonctionnement de la commande Format ? vous en penser quoi meme si cela n'est pas primordial, au moins je me coucherai moin con ce soir. :)

 

[edtdd]--Message édité par k yo--[/edtdd]


---------------
"Si l'homme descend du singe, il peut aussi y remonter."
Reply

Marsh Posté le 22-01-2002 à 15:47:36    

Allez, tout en une seule ligne :
 
MonTextbox = Format$( Right(Date, 2) + Format$( numauto, "00000" ), "0000000" )


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed