Macro Access : Dlookup

Djrome Messages postés 57 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 26 mai 2010 - 7 juil. 2008 à 17:11
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 - 7 juil. 2008 à 18:29
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

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
7 juil. 2008 à 17:22
salut,

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

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
Djrome Messages postés 57 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 26 mai 2010
7 juil. 2008 à 17:45
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 .
0
bonjourcheval Messages postés 228 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 8 août 2011
7 juil. 2008 à 17:58
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à
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
7 juil. 2008 à 17:58
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Djrome Messages postés 57 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 26 mai 2010
7 juil. 2008 à 18:02
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 .
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
7 juil. 2008 à 18:04
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
0
Djrome Messages postés 57 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 26 mai 2010
7 juil. 2008 à 18:25
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 .
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
7 juil. 2008 à 18:29
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
0
Rejoignez-nous