cs_Nana35
Messages postés18Date d'inscriptionmercredi 8 octobre 2008StatutMembreDernière intervention 2 février 2009
-
15 oct. 2008 à 17:42
Redman31100
Messages postés167Date d'inscriptionmardi 11 septembre 2007StatutMembreDernière intervention11 février 2009
-
17 oct. 2008 à 12:49
Bonjour à tous,
Je voudrais créer un n° de parcelle en concaténant mes champs (PAinsee, PAsection, Panum, PAdivision) sous un formulaire dans Access 2003.
Je souhaite que PAnum contienne 4 chiffres. J'ai donc crée uu programme avec la structure if permettant de rajouter un "0" lorsque le PAnum<10, "00" quand <100... Cette methode me rajoutait à chaque fois "000". Alors j'ai essayé avec la structure case mais pas de meilleurs résultats.
Je débute en VBA, donc il s'agit certainement d'une erreur toute con!
Voici mon programme:
Private Sub BOUTON_ENR_ID_PARCELLE_Click()
'La numérotation de la facture est construite en 4 parties:
'1) le numéro INSEE de la commune où est situé la parcelle,
'2) la section
'3) n° de parcelle
'4) division de la parcelle si c'est le cas (a ou b)
Dim PAinsee As Integer, PAsection As String, PAnum As Integer, PAdivision As String
Dim NumeroParcelle As String
'Ajouter un "0" au n° parcelle si la section ne comporte qu'une lettre.
If Len(Me.PAsection) < 2 Then
NumeroParcelle = Me.PAinsee.Value & "0" & Me.PAsection.Value
Else
NumeroParcelle = Me.PAinsee.Value & Me.PAsection.Value
End If
'Ajouter des "0" devant les n° parcelle pour constituer un numéro à 4 chiffres.
Select Case PAnum
Case 1 To 9
NumeroParcelle = NumeroParcelle & "000" & Me.PAnum.Value & Me.PAdivision.Value
Case 10 To 99
NumeroParcelle = NumeroParcelle & "00" & Me.PAnum.Value & Me.PAdivision.Value
Case 100 To 999
NumeroParcelle = NumeroParcelle & "0" & Me.PAnum.Value & Me.PAdivision.Value
Case Else
NumeroParcelle = NumeroParcelle & Me.PAnum.Value & Me.PAdivision.Value
pile_poil
Messages postés682Date d'inscriptionvendredi 6 avril 2007StatutMembreDernière intervention 4 août 20126 15 oct. 2008 à 18:32
bonjour
ton gros probleme c'est que dans ton évenement click tu déclare les
variables pour faire ton numéro donc les integer ont la valeur 0 et
les string la valeur ""
tu dois donc les déclarer bien avant en public au niveau de la form ou se trouve le bouton ainsi que, je suppose, les textbox qui te permettent de saisir les valeurs
ensuite tu pourra remplacer ton usine à gaz par cette simple ligne
NumeroParcelle = PAinsee.Value &
format(PAsection.Value,00) &
format(PAnum.Value,0000) & PAdivision.Value
[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE