ACCESS Reprendre le numéro auto en cours dans un autre formulaire

ACCESS Reprendre le numéro auto en cours dans un autre formulaire - VB/VBA/VBS - Programmation

Marsh Posté le 12-06-2007 à 16:57:32    

Bonjour,  
 
J'ai un problème sous MS ACCESS,
 
j'ai un formulaire que je suis en train de remplir et celui-ci possède un champs ou j'affiche le numéro automatique venant de ma table.
Dès que je rentre une données dans mon formulaire, celui-ci prend une valeur. Il passe de (NuméroAuto) à 1 par exemple.
 
Depuis ce formulaire et sans passer à l'enregistrement suivant, j'ouvre un deuxième formulaire qui devrait m'afficher aussi le numréro automatique qui vient d'être incrémenter dans mon formulaire source.
 
J'ai donc créé un champs et en VBA, la commande MONCHAMPS.Value = Forms![ANCIENFORMULAIRE]![CHAMPSDUNUMEROAUTO]
 
Malheureusement, cela ne fonctionne pas, ACCESS met le message d'erreur suivant : Erreur d'execution 94 Utilisation incorrecte de Null.
 
Comme si mon champs était vide...
 
Quelqu'un a une idée ?
 
Merci d'avance

Reply

Marsh Posté le 12-06-2007 à 16:57:32   

Reply

Marsh Posté le 12-06-2007 à 17:20:30    

Je n'ai pas de souvenir précis à ce sujet mais je dirais que la valeur affichée est encore inaccessible tant que l'enregistrement n'est pas validé.


Message édité par tegu le 12-06-2007 à 17:21:10
Reply

Marsh Posté le 13-06-2007 à 07:30:44    

Bonjour,
tu l'as mise à quel niveau ta commande?
J'ai testé vite fait, le N° auto est affichable (par msgbox ) après son apparition, il devrait donc suffir de placer ta commande à un endroit où elle n'est pas exécutée trop tôt.
 
Cordialement

Reply

Marsh Posté le 13-06-2007 à 07:53:59    

seniorpapou a écrit :

Bonjour,
tu l'as mise à quel niveau ta commande?
J'ai testé vite fait, le N° auto est affichable (par msgbox ) après son apparition, il devrait donc suffir de placer ta commande à un endroit où elle n'est pas exécutée trop tôt.
 
Cordialement


 
Je l'ai mis dans l'évènement "Sur ouverture" du formulaire qui est ouvert en cliquant sur le bouton se trouvant sur le formulaire source...
 
Dans ton test, est-ce que tu essaies sur le même formulaire ou sur un formulaire différent ?

Reply

Marsh Posté le 13-06-2007 à 07:59:02    

les deux, j'ai fait msgbox sur clic dans des zones de texte
mais mon sous-formulaire est intégré
 
je testerai ta méthode tout à l'heure


Message édité par seniorpapou le 13-06-2007 à 08:00:52
Reply

Marsh Posté le 13-06-2007 à 08:03:20    

C'est sympa, mes deux formulaires sont bien distinct. J'essaie juste de reprendre la données se trouvant sur l'autre formulaire. Merci

Reply

Marsh Posté le 13-06-2007 à 08:04:13    

Je pense que Tegu n'a pas tout tort mais sûrement qu'il est possible de reprendre cette valeur autrement

Reply

Marsh Posté le 13-06-2007 à 08:41:54    

Re,
j'ai testé de la manière suivante:
 
1er formulaire (d) avec des champs d'une table et N° (automatique)
nouveau record puis écriture dans un champ, donc apparition du n° non null, clic sur bouton de commande qui charge un nouveau formulaire.
 
Msgbox de forms!d!N° dans  ce nouveau formulaire au niveau du open
 
le numéro affiché est bien le nouveau et n'est pas null.  
Il faut chercher autre part
@+
Par contre ce n'est pas prudent d'utiliser un N° dans un autre formulaire alors qu'un Esc peut le supprimer en revenant dans le formulaire précédent.


Message édité par seniorpapou le 13-06-2007 à 09:08:02
Reply

Marsh Posté le 13-06-2007 à 09:15:31    

Cela ne fonctionne pas chez moi, j'ai essayé avec une msgbox sur le 2ème formulaire et toujours le même message.
 
Le numéro automatique que tu utilises est bien définit dans une table et l'enregistrement n'est pas inséré dans la table lors du test? Merci encore  
 

Reply

Marsh Posté le 13-06-2007 à 09:29:50    

vite fait un mdb:
http://cjoint.com/?gnjDrqJVPo
pour voir si on parle de la même chose

Reply

Marsh Posté le 13-06-2007 à 09:29:50   

Reply

Marsh Posté le 13-06-2007 à 11:33:23    

Oui, on parle exactement de la même chose. Et chez toi cela fonctionne. Mon formulaire est beaucoup plus complexe avec beaucoup de données. Je vais voir en testant petit à petit quand est-ce que cela ne fonctionne plus. Merci beaucoup.
 
Image du prob. La base est trop grosse pour que je l'envoie :
 
http://cjoint.com/?gnlF3UKPlN

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed