Macro Access : Dlookup

Signaler
Messages postés
57
Date d'inscription
vendredi 13 juin 2008
Statut
Membre
Dernière intervention
26 mai 2010
-
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
-
Salut les Kracks,

J'ai trouvé sur le site de Microsoft une méthode pour incrémenter un numéro automatiquement (+1) afin d'éviter les erreurs d'encodage sous Access.
Cependant, j'ai un bug sur la macro suivante :

Private Sub Form_Current()
If Me.NewRecord Then
     ' Note that <FieldName> is the name of your text field on your form.
     Me!<N°d'archivage> = DLookup("[MaxValue]", "qryMaxVal") + 1
End Sub

Microsoft Visual Basic
---------------------------
Compile error:



Expected: =
---------------------------
OK   Help  
---------------------------


D'avance merci

Link: http://support.microsoft.com/kb/306128/fr








Douraka outchit, chto mièrvavo litchit .

8 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
salut,

c'est quoi ça :
     Me!<N°d'archivage>

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
57
Date d'inscription
vendredi 13 juin 2008
Statut
Membre
Dernière intervention
26 mai 2010

Salut Mortalino,

Si tu click sur le lien, au point n°6 du site, celà était inscrit comme ça!
J'avoue n'avoir jamais eû affaire à ce genre d'expression, mais bon !!!!!!?????
J'ai essayé en les remplaçant par = (N°archivage) mais sans succés!

@+

Douraka outchit, chto mièrvavo litchit .
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011

Je crois que j'ai comprit ton erreur ...
(N°archivage)  est ton champs qui est sous numérotation automatique...
À la place de (N°archivage), écrit  [tonChamps]
[tonChamps] = Le champs qui est le numéro automatique.

voilà
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Lu !

Je travaille pas avec access, mais a première vu je dirai qu'il faut remplace <FieldName> par le nom de ton champs dans la form
(et pis tu l'as mis au dessus, en anglais) :

     ' Note that <FieldName> is the name of your text field on your form.
Suis pas top en anglais, mais je dirai
' Sachant que <FieldName> est le nom de ton champs text sur ta form

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
57
Date d'inscription
vendredi 13 juin 2008
Statut
Membre
Dernière intervention
26 mai 2010

Re,

La macro est enregistrée sous access 97, peut-être celà explique l'utilisation de:
c'est quoi ça :
     Me!<N°d'archivage>

Pour info, j'utilise 2003 (au taf)...

Salutations
Douraka outchit, chto mièrvavo litchit .
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Pas pour moi mais pour les autres qui sont calés en access, je pense qu'il serait plus judicieux (plutot que de dire le code trouvé), ce que tu veux faire exactement, dans quel contexte, et surtout où ! (num auto dans une form, dans ta bdd, quel champs, etc..)

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
57
Date d'inscription
vendredi 13 juin 2008
Statut
Membre
Dernière intervention
26 mai 2010

En effet,

Je souhaiterai avoir un numéro qui s'incrémente de 1 automatiquement, dans un champ access, dès l'ajout d'un nouvel évènement dans un formulaire.
En effet, je travail avec des personnes qui ont du mal à ajouter eux-même le chiffre suivant (????faignant ou étourdi ou les deux), et ils se trompent régulièrement : 2301, 2302, 2330, 2304, 2305...
Interdire les doublons est facile sous access (donc pas d'erreur avec les chiffres en dessous du dernier enregistré) mais on peut encore se tromper (voir ci-dessus) en indiquant un chiffre bien au delà de celui nécessaire!
Comme vous l'aurez deviné, mon champs s'appel N°d'archivage...

Merci à vous

Pour Bonjourcheval,

Non, ce n'est pas mon champs (de clé primaire)!
C'est belle et bien un champ ou doit s'incrémenter le numéro d'archive (qui ne correspond pas forcément à la clé primaire, malheureusement, car le dossier prend le numéro des archives en cours de route!) et qui n'est pas en format numéro automatique.
Merci pour ta participation.

Douraka outchit, chto mièrvavo litchit .
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Un truc simple (pour toi hein ! moi et les requêtes.. )
Tu laisse tomber la demande aux utilisateurs du numéro auto, tu lis la dernière valeur du recordset (donc la dernière valeur dans ton champs, concernant ce numéro, en faisant une requête de lecture avec SELECT) et tu lui ajoutes 1.

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA