Visites

   visiteurs

   visiteurs en ligne

Sujet n°183 Champs numérique et numéro auto
    par janiolauren le 01/09/2008 : 10:21

Bonjour,

Voilà, j´ai une nouvelle question à laquelle je ne trouve pas de solutions aussi j´aimerais savoir si vous pouviez m´éclairer. Dans ma table B2C contacto j´ai un champs ID contacto qui est en numéro auto et un champs N·de presupuesto (N·de réservation si vous voulez) lequel est en texte. Je souhaiterais que dans le champs N· de presupuesto se rentre automatiquement une valeur du style LG/081574 (et ce dès la première ligne), puis à la ligne suivante LG/081575 (LG/081576 etc...). Jusqu ´ici, la seule solution que j´ai trouvé c´est de le faire par l´intermédiaire d´une requête et en mettant mon champs N· de presupuesto en auto numéro mais ceci implique la suppression de ma colonne ID contacto ( car il ne peut y avoir dans une même table 2 champs en numero auto); Or je souhaiterais fortement la conserver. Quelqu´un aurait il une idée donc pour que je puisse garder mon champs ID contacto et que celui de N· de presupuesto ait des valeurs qui se suivent automatiquement sachant qu´il ne comporte pas que des valeurs numériques?

Merci par avance,

cordialement,

Lauren


Réponse n° 1 par 3Stone le 02/09/2008 : 00:26
Bonjour,

Je te déconseille de créer ce genre de numéro de code (LG/081576) qui n'a pas d'intérêt réel.

Si ce code commence toujours par "LG/", cette partie ne contient aucune information nécessaire et peut très facilement être reconstitué pour être affiché dans un état par un "LG/" & [N de presupuesto]

Il suffit alors de générer dans la table un code numérique qui commence à 81576 par:

=NZ(DMax("[N de presupuesto]";"B2C contacto");81574)+1

que l'on place comme valeur par défaut


Si tu veux maintenir ton système de code, place ceci dans l'événement "Sur activation" (form_current) de ton formulaire.

Private Sub Form_Current()
    Dim sLastCode As String
    Dim lLastNum As Long
   
    If Me.NewRecord Then
        sLastCode = Nz(DMax("[N de presupuesto]", "B2C contacto"), "LG/081574")
        lLastNum = Val(Mid(sLastCode, 4))
        Me.N_de_presupuststo = "LG/" & Format(lLastNum + 1, "000000")
    End If
   
End Sub

Cordialement,
Pierre(3stone)

Réponse n° 2 par JANIOLAUREN le 02/09/2008 : 18:34

Bonjour,

Je te remercie pour ton aide, malheureusement cela ne marche pas. Lorsque je rentre dans valeur par défaut  de N de presupuesto =NZ(DMax("[N de presupuesto]";"B2C contacto");81574)+1, j'ai un message d'erreur qqui apparaît qui me dit "Fonction 'NZ' inconnue dans l'expression de validation ou dans la valeur par défaut de 'Contacto B2C.N de presupuesto'. Il y a bien à cadre d'aide qui est apparut mais justement il ne m'aide pas vraiment. Aurais tu une idée d'où pourrait provenir cette erreur. Je te renmercie par avance,

Cordialement,

Lauren

Réponse n° 3 par 3Stone le 02/09/2008 : 18:55
Bonjour,

Je viens de le tester... et cela fonctionne parfaitement.

Mais, un petit oubli dans mon explication...

Il faut éviter les caractères accentué et les espaces dans tous les noms d'objet - cela facilite l'écriture.

Modifie donc ainsi :

=Nz(DMax("[N de presupuesto]";"[B2C contacto]");81574)+1

et, il faut bien le mettre dans le formulaire, dans la propriété de la zone de texte, onglet Données à la ligne 'Valeur par défaut'.

Cordialement,
Pierre(3stone)

Réponse n° 4 par janiolauren le 03/09/2008 : 10:15

Bonjour,

Eh bien, j´imagine qu´il y a quelque chose que je ne fais pas bien car j´ai toujours le message #error qui apparaît. Je vais tenter de re-manipuler la formule en espérant que ma chance soit au RDV. Merci quand même,

Cordialement,

Lauren

[ Retour à la liste des sujets ]

Recherche



Préférences

Se reconnecter
---

Votre nom (ou pseudo) :

Votre code secret


 Nombre de membres 1 membre


Connectés :

( personne )

Haut