[vba-access2007] Numéro auto personnalisé
Mikeline
-
Mikeline -
Mikeline -
Bonjour,
Bonjour,
J'essai de créer au sein d'un formulaire un numéro automatique personnalisé en VBA ACCESS 2007, j'y arrive presque sauf pour les 2 derniers chiffres.
Mon numéro se compose de :
- 0008222 : début du numéro (fixe) cette partie est valide.
- 3 chiffres récupérés par rapport à des choix dans 2 listbox : partie également valide
- 3 chiffres en incrémentation automatique : partie également valide
- 2 chiffres (la fin) qui est 16, nombre fixe : c'est ici que sa coince
Ceci devrait donnée un numéro comme ceci : 000822279500116
Malheureusement pour moi je n'obtient que : 0008222795001 donc y me manque le 16 et je ne vois pas comment l'ajouter.
Mon code :
En ajoutant "& 16" a la fin j'ai une erreur qui me signale que mon champs est trop petit pour accepter la quantité de données que je veux ajouter. Sans le "& 16" j'obtient bien mon numéro mais bon sans le 16.
Le module num12nc est pour les 3 chiffres en incrémentation automatique.
Merci de votre aide.
Bonjour,
J'essai de créer au sein d'un formulaire un numéro automatique personnalisé en VBA ACCESS 2007, j'y arrive presque sauf pour les 2 derniers chiffres.
Mon numéro se compose de :
- 0008222 : début du numéro (fixe) cette partie est valide.
- 3 chiffres récupérés par rapport à des choix dans 2 listbox : partie également valide
- 3 chiffres en incrémentation automatique : partie également valide
- 2 chiffres (la fin) qui est 16, nombre fixe : c'est ici que sa coince
Ceci devrait donnée un numéro comme ceci : 000822279500116
Malheureusement pour moi je n'obtient que : 0008222795001 donc y me manque le 16 et je ne vois pas comment l'ajouter.
Mon code :
If Me.type.Value = "1" Then
sav_prd_typ = "795"
Else
If Me.type.Value = "3" Then
sav_prd_typ = "765"
Else
If Me.techno.Value = "1" Then
sav_prd_typ = "764"
Else
sav_prd_typ = "766"
End If
End If
End If
If IsNull(Me.prd_12nc) Then
Me.prd_12nc = num12nc("tbl_produits", "prd_12nc", "0008222" & sav_prd_typ, 3 & 16)
End If
En ajoutant "& 16" a la fin j'ai une erreur qui me signale que mon champs est trop petit pour accepter la quantité de données que je veux ajouter. Sans le "& 16" j'obtient bien mon numéro mais bon sans le 16.
Le module num12nc est pour les 3 chiffres en incrémentation automatique.
Merci de votre aide.
2 réponses
-
salut,
il faut que tu verifies dans ta table la longueur ( nb charactères) que tu acceptes.
apparement ta limite est fixée à 13 charactères et tu en as besoin de 14.
vérifie cette propriété.
edit "Taille du champ"
A+ -
Problème résolu,
En faite j'ai mis le "& 16" apres les parenthèses :Me.prd_12nc = num12nc("tbl_produits", "prd_12nc", "0008222" & sav_prd_typ, 3) & 16
Sur les quelques testes effectuée cela fonctionne, j'obtiens bien mon numéro a 15 chiffres !