Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Numéros auto libres

23 réponses
Avatar
JulieH
Bonjour,

Bricoleuse sur Access, je consulte souvent le forum et ses archives qui
m'aident évidemment beaucoup. Cependant, cette fois-ci, je n'ai pas
trouvé ce que je cherche. Voici mon problème exposé de manière simplifié :

Je gère des troupeaux d'animaux qui ont des numéros de tatouage à 9
chiffres. Comme ce n'est pas très pratique à saisir sans erreur, je leur
affecte
un "numéro de travail" à 3 chiffres plus facile à utiliser.
Lorsque je démarre un cheptel, je crée mes animaux (par exemple 999
individus) et Access leur affecte un numéro de travail auto de 1 à 999.
Dans les semaines suivantes, certains sont vendus ou disparaissent, je
les enregistre et ainsi, leurs numéros se libèrent.
Le mois suivant par exemple, si j'entre d'autres animaux dans le
cheptel, je souhaite qu'Access leur affecte les numéros libérés.

Est-ce possible ? Merci par avance pour vos idées.

Julie

3 réponses

1 2 3
Avatar
JulieH
Bonjour,

Réponse dans le texte.

Bonjour.

------------------------ citation : -------------------------------
Or la mise à jour ne se fait que lorsque j'ai cliqué deux fois dans
la zone "Numéro de travail".
---------------------- fin de citation ---------------------------


Je n'ai aucune explication à cela. Faudrait voir ce que tu as fait.
L'information de num trav devrait bien sûr se fair après mise à jour de
tatouage...

J'ai mis l'ébauche de mes essais dans CJoint. Si tu peux regarder.

http://cjoint.com/?eppeR4bY6t

------------------------ citation : -------------------------------
le système pour gérer le dépassement de numéros ne
fonctionne pas. Dans mon exemple avec numéros de 1 à 6. Tout marche bien
si un ou plusieurs numéros entre 1 et 6 manquent. En revanche, si j'ai
tous les numéros entre 1 et 6, je ne vois pas apparaître la MsgBox, il
m'inscrit toujours 7.
---------------------- fin de citation ---------------------------



Là c'est facile : encore une coquille de la fonction. Remède : remplacer
"if i = 6 ..."
par
"if i = 7 ..."



OK pour cela, c'est réglé. Dans ce cas là, le message apparaît bien
immédiatement après la MAJ du N° de tatouage.

A plus et bon dimanche,


Encore merci pour ton aide.


Avatar
pgz
J'ai regardé ta base. Le pb résiduel vient du nom de ton contrôle associé à
Numtrav dans le formulaire d'entrée, que tu as appelé "Numéro de travail". Or
dans la fonction c'est Numtrav ( Me.NumTrav = i)

Conclusion : tu appeles ton contrôle NumTrav et cela fonctionne.

Je te recommande à nouveau de ne pas utiliser de nom pour les objets ou les
variables avec des espaces ou des underscores. A la longue tu t'appercevras
du confort de la notation "en dos de chameau", comme NumTrav ou
NuméroDeTravail.

Pour aller plus loin sur les conventions typographiques, une adresse :
http://argyronet.developpez.com/office/vba/convention/

A bientôt.
--
pgz
_____________________________

Avatar
JulieH
OK, tout va bien.

Je te remercie à nouveau pour ta patience et tes conseils. Je vais
essayer de progresser seule mais je reviendrai sans doute pour d'autres
questions.

Julie


J'ai regardé ta base. Le pb résiduel vient du nom de ton contrôle associé à
Numtrav dans le formulaire d'entrée, que tu as appelé "Numéro de travail". Or
dans la fonction c'est Numtrav ( Me.NumTrav = i)

Conclusion : tu appeles ton contrôle NumTrav et cela fonctionne.

Je te recommande à nouveau de ne pas utiliser de nom pour les objets ou les
variables avec des espaces ou des underscores. A la longue tu t'appercevras
du confort de la notation "en dos de chameau", comme NumTrav ou
NuméroDeTravail.

Pour aller plus loin sur les conventions typographiques, une adresse :
http://argyronet.developpez.com/office/vba/convention/

A bientôt.


1 2 3