Ajout d'enregistrement table access en VBA
Résolu
medbo
Messages postés
570
Statut
Membre
-
pfe -
pfe -
Bonjour,
je suis entrain de faire une petite application en access. je suis coincé devant un problème que j'explique comme ceci :
dans l'application il y a un formulaire qui contient 02 champs de texte (texte1 et texte2)
et il y a une table (table1) qui reçois les valeurs que je vais saisir dans "texte1" et "texte2" dans la colonne "série" ( les valeurs sont de "texte1.value" à "texte2.value" ). exemple :
si je met dans texte1 la valeur 10 et dans texte2 la valeur 15, alors les valeurs qui vont être enregistrées dans la table1 dans la colonne série sont 10, 11, 12, 13, 14, 15 (soit 16 enregistrements)
je ne sais pas comment faire cela en VBA.
si quelqu'un sais comment s y prendre alors sont aide m'est très précieuse. J'ai besoin de votre aide.
merci à tout ceux qui m'aideront.
--
c'est en s'entre-aidons que nous réussirons
je suis entrain de faire une petite application en access. je suis coincé devant un problème que j'explique comme ceci :
dans l'application il y a un formulaire qui contient 02 champs de texte (texte1 et texte2)
et il y a une table (table1) qui reçois les valeurs que je vais saisir dans "texte1" et "texte2" dans la colonne "série" ( les valeurs sont de "texte1.value" à "texte2.value" ). exemple :
si je met dans texte1 la valeur 10 et dans texte2 la valeur 15, alors les valeurs qui vont être enregistrées dans la table1 dans la colonne série sont 10, 11, 12, 13, 14, 15 (soit 16 enregistrements)
je ne sais pas comment faire cela en VBA.
si quelqu'un sais comment s y prendre alors sont aide m'est très précieuse. J'ai besoin de votre aide.
merci à tout ceux qui m'aideront.
--
c'est en s'entre-aidons que nous réussirons
1 réponse
-
Salut,
tu peux regarder ça et t'en inspirer pour commencer.
Ensuite, il suffit de mettre une boucle pour générer les numéros entre les deux bornes.
-
Merci blux, c'est gentille de m'avoir répondu.
voici le code que j'ai utilisé :
Private Sub Commande4_Click()
Dim rst As Recordset
Dim DBTemp As DAO.Database
Set DBTemp = CurrentDb
Set rst = DBTemp.OpenRecordset("table1")
With rst
rst.AddNew
rst("série").Value = Me.Texte1.Value
If rst("série").Value < Me.Texte2.Value Then
Do While rst("série").Value + 1
Loop
End If
End With
MsgBox ("c'est fait !!")
End Sub
ça ne rajoute que la valeur de texte1
je vous informe que je suis novice en VBA;
je ne sais pas comment mettre une boucle. -
je vous informe que je suis novice en VBA;
Tu as déjà fait un truc qui tient la route, c'est tout à fait encrourageant !
Pour la suite, on peut faire un truc comme ça (à corriger en fonction des erreurs de syntaxe qui j'aurais pu commettre) :
Private Sub Commande4_Click() Dim rst As Recordset Dim DBTemp As DAO.Database Set DBTemp = CurrentDb Set rst = DBTemp.OpenRecordset("table1") With rst for i = Me.Texte1.Value to Me.Texte2.Value rst("série").Value = i rst.AddNew next End With MsgBox ("c'est fait !!") End Sub
Le truc va quand même être de s'assurer que les insertions dans 'table1' sont correctement gérées au niveau clé primaire.
-