[VBA-access] Numérotation auto personnalisé

Fermé
Silex18 - Modifié par Silex18 le 1/10/2010 à 10:51
 Silex18 - 1 oct. 2010 à 11:37
Bonjour,

Lors de la création d'une base de données access 2007, je devais créer un numéro de produit auto et personnalisé du style 000822276500116.
Dans ce numéro la partie 0008222 (début) et le numero 16 (a la fin) ne change jamais.
En revanche le 765 peut changer selon le produit créer (par rapport à 2 liste déroulante), ex : si le produit concerne un produit fasttrack alors ce numéro sera 795, si c'est un spécial alors ce sera 765 (voir le code vous comprendrez).
Et donc pour le numéro auto, dans l'exemple ici 001, je me suis basé sur le numéro auto du produit : champs "prd_id_prd".
Mais malheureusement pour moi cela a changé et je dois faire en sorte que la numérotation auto du de ce numero soit différente selon si c'est un fasttrack, spécial, derived.
Donc en somme si c'est un fastrack (795) je debute la numérotation auto à 001.
si c'est un spécial (765) je comme la numérotion à 500.
si c'est un led (764) je comme la numerotation à 530.
et sinon autre choix (766), je comme aussi à 530 .
Donc cela me change tout, ce que j'avais deja mis en place et je dois dire que je suis complétement perdu.
Voici mon code :
If Me.type.Value = "Fast Track" Then 
        sav_prd_typ = "795" 
    Else 
        If Me.type.Value = "Special" Then 
            sav_prd_typ = "765" 
        Else 
            If Me.techno.Value = "LED" Then 
                sav_prd_typ = "764" 
            Else 
                sav_prd_typ = "766" 
            End If 
        End If 
    End If 
    If Not IsNull(Me.prd_12nc) Then 
    Me.prd_12nc = Null 
    End If 
    If IsNull(Me.prd_12nc) Then 
        Me.prd_12nc = "0008222" & sav_prd_typ & Format(Me.prd_id_prd, "000") & 16 
    End If


Je pense que quelque chose come cela devrait le faire :

Si le type (choix dans liste déroulante) est "fast track" alors sav_prd_typ = 795
Et la numérotation auto commencera à 001.

Sinon si le type est "spécial" alors sav_prd_typ = 765
Et la numérotation auto commencera à 500.

Sinon si la techno (choix dans 2ieme liste déroulante) est "led" alors sav_prd_typ = 764
Et la numérotation auto commencera à 530.

Sinon sav_prd_typ = 766
Et la numérotation auto commencera à 530.

Mon probleme est que je n'arrive pas à retranscrire cela en VBA.
Merci pour votre aide.
A voir également:

1 réponse

Personne pour me venir en aide ?
0