Copier recordset

Signaler
Messages postés
39
Date d'inscription
mercredi 8 décembre 2004
Statut
Membre
Dernière intervention
28 janvier 2009
-
Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
-
Bonjour,

Je me débrouille en VB6 mais en VBA ... un peu moins

Bref ce que je veux faire c'est tout con pour moi en VB6 mais dans Access ça devient vite plus flou pour moi.

Voilà, j'ai une table d'inventaire de matos et un formulaire pour remplir cette table de matos.

Pour le moment je rempli toutes les cases puis quand j'arrive au SerialNumber je scan et puis je clique sur un bouton VALIDER qui déclanche une fonction automatique d'Access qui fait un ENREGISTRER et un ACTUALISER et c'est tout.

Le truc chiant c'est que je rempli une série d'écran par exemple et là je dois re remplir tous les champs puis scanner le SerialNumber. Ce que j'aimerais c'est qu'au moment où je fais VALIDER ça :
* enregistre les données encodées à l'écran
* passe au record suivant dans le formulaire
* recopie les données du dernier enregistement sauf le SerialNumber

Ainsi je peux juste faire scanner le code barre et appuyer sur VALIDER et je gagne un temps fou

Pour ce faire je comptais faire un truc genre :

sql = "insert into TaInventaire values ..."
executer sql ==> comment je peux lui dire d'exécuter un sql dans Access ?

passer à l'occurence du formulaire suivant ==> comment on fait pour passer à la 'page suivante' d'un formulaire Access ?

sql = "select * from TaInventaire"
rs.movelast
FoInventaire.modele.text = rs!modele
FoInventaire.marque.text = rs!marque
...

Merci

3 réponses

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Si tu veux garder les anciennes informations de ton précédent articles(sauf le sérial), je ne voips donc pas l'intêret de faire 2 requête....

Une seul requête de séléction suffit, puis par la suite une fois que tu as enregistrer, tu effaces juste la zone de texte qui contient ton sérial...Non ? C'est plus simple je pense....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Euh...Je voulais dire : une seul requête d'insertion suffit

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
7
Pour exécuter une requête SQL dans le VBA ACCESS, dans le code de ton bouton le code suivant : 
DoCmd.RunSQL "INSERT blabla ..."

Pour passer à la page suivante de ton formulaire :
C'est inutile dans ton cas puisque le clic sur le bouton Valider déclenche une requête Insertion. Quelque part, tu te moques de savoir où tu te trouves dans ta table, et de changer la page de ton formulaire. Il te suffit de réinitialiser tous les champs nécessaires comme le suggère Exploreur, ta requête Insertion fera tout le reste.

Molenn