j'ai deux tables liées par NumAuto , le premier contient un champ qui
s'appelle Nombre de Lot , je veux faire un boucle qui multipli le nombre
d'enregistrement automatiquement dans le deuxieme table par le nombre de lot
en commancent par 1.
example :
[Table1]! [Commande] = C1.
[Table1]! [Nombre de lot] = 3.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Nobodyisperfect
Bonjour BerloSconi
Avec le code ci-dessous, cela devrait te donner une piste ;O)
Référence DAO
Sub x() Dim MyBase as Database Dim MyRst1 as Recordset Dim MyRst2 as Rescordset Dim Compteur1 as Integer Dim Compteur2 as Integer Dim NomCommande as Variant
Set MyBase = CurrentDb Set MyRst1 = MyBase.OpenRecordset("Table1") Set MyRst2 = MyBase.OpenRecordset("Table2")
With MyRst1 .While Not.Eof .Edit NomCommande = !Commande Compteur1 = !"Nombre de lot" Compteur2 = 1 While Compteur2 <= Compteur1 MyRst2.AddNew MyRst2!Commande = NomCommande MyRst2!"Numéro lot" = Compteur2 MyRst2.Update Compteur2=Compteur2+1 Wend .Update .MoveNext .Wend End With
Set MyRst1 = Nothing Set MyRst2 = Nothing MyBase.Close
End Sub
@+ Olivier "BerloSconi" wrote in message news:
Bonjour ;
j'ai deux tables liées par NumAuto , le premier contient un champ qui s'appelle Nombre de Lot , je veux faire un boucle qui multipli le nombre d'enregistrement automatiquement dans le deuxieme table par le nombre de lot
en commancent par 1. example : [Table1]! [Commande] = C1. [Table1]! [Nombre de lot] = 3.
Avec le code ci-dessous, cela devrait te donner une piste ;O)
Référence DAO
Sub x()
Dim MyBase as Database
Dim MyRst1 as Recordset
Dim MyRst2 as Rescordset
Dim Compteur1 as Integer
Dim Compteur2 as Integer
Dim NomCommande as Variant
Set MyBase = CurrentDb
Set MyRst1 = MyBase.OpenRecordset("Table1")
Set MyRst2 = MyBase.OpenRecordset("Table2")
With MyRst1
.While Not.Eof
.Edit
NomCommande = !Commande
Compteur1 = !"Nombre de lot"
Compteur2 = 1
While Compteur2 <= Compteur1
MyRst2.AddNew
MyRst2!Commande = NomCommande
MyRst2!"Numéro lot" = Compteur2
MyRst2.Update
Compteur2=Compteur2+1
Wend
.Update
.MoveNext
.Wend
End With
Set MyRst1 = Nothing
Set MyRst2 = Nothing
MyBase.Close
End Sub
@+
Olivier
"BerloSconi" <lassaad.braham@planet.tn> wrote in message
news:O290GV9UGHA.4384@tk2msftngp13.phx.gbl...
Bonjour ;
j'ai deux tables liées par NumAuto , le premier contient un champ qui
s'appelle Nombre de Lot , je veux faire un boucle qui multipli le nombre
d'enregistrement automatiquement dans le deuxieme table par le nombre de
lot
en commancent par 1.
example :
[Table1]! [Commande] = C1.
[Table1]! [Nombre de lot] = 3.
Avec le code ci-dessous, cela devrait te donner une piste ;O)
Référence DAO
Sub x() Dim MyBase as Database Dim MyRst1 as Recordset Dim MyRst2 as Rescordset Dim Compteur1 as Integer Dim Compteur2 as Integer Dim NomCommande as Variant
Set MyBase = CurrentDb Set MyRst1 = MyBase.OpenRecordset("Table1") Set MyRst2 = MyBase.OpenRecordset("Table2")
With MyRst1 .While Not.Eof .Edit NomCommande = !Commande Compteur1 = !"Nombre de lot" Compteur2 = 1 While Compteur2 <= Compteur1 MyRst2.AddNew MyRst2!Commande = NomCommande MyRst2!"Numéro lot" = Compteur2 MyRst2.Update Compteur2=Compteur2+1 Wend .Update .MoveNext .Wend End With
Set MyRst1 = Nothing Set MyRst2 = Nothing MyBase.Close
End Sub
@+ Olivier "BerloSconi" wrote in message news:
Bonjour ;
j'ai deux tables liées par NumAuto , le premier contient un champ qui s'appelle Nombre de Lot , je veux faire un boucle qui multipli le nombre d'enregistrement automatiquement dans le deuxieme table par le nombre de lot
en commancent par 1. example : [Table1]! [Commande] = C1. [Table1]! [Nombre de lot] = 3.
Dans le code que je t'ai envoyé, il ne gère pas les données déjà présentes dans la Table2 et je suppose que la relation entre la Table1 et Table2 est de 1 à N.
@+ Olivier
Re BerloSconi,
Dans le code que je t'ai envoyé, il ne gère pas les données déjà
présentes dans la Table2 et je suppose que la relation entre la Table1 et
Table2 est de 1 à N.
Dans le code que je t'ai envoyé, il ne gère pas les données déjà présentes dans la Table2 et je suppose que la relation entre la Table1 et Table2 est de 1 à N.
@+ Olivier
Nobodyisperfect
Voilà ton code !!!.
Sub ()
Dim MyBase As Database Dim MyRst1 As Recordset Dim MyRst2 As Recordset Dim Compteur1 As Integer Dim Compteur2 As Integer Dim Compteur3 As Integer Dim NomCommande As Variant
Set MyBase = CurrentDb Set MyRst1 = MyBase.OpenRecordset("Table1") Set MyRst2 = MyBase.OpenRecordset("Table2")
With MyRst1 While Not .EOF .Edit NomCommande = !Commande Compteur1 = ![Nombre de lot] Compteur2 = 1 Compteur3 = 1 While Compteur2 <= Compteur1 For i = 1 To Compteur1 MyRst2.AddNew MyRst2!Commande = NomCommande MyRst2![Numéro de lot] = Compteur3 MyRst2.Update Next Compteur3 = Compteur3 + 1 Compteur2 = Compteur2 + 1 Wend .Update .MoveNext Wend End With
Set MyRst1 = Nothing Set MyRst2 = Nothing MyBase.Close
"Nobodyisperfect" wrote in message news:
Re BerloSconi,
Dans le code que je t'ai envoyé, il ne gère pas les données déjà présentes dans la Table2 et je suppose que la relation entre la Table1 et Table2 est de 1 à N.
@+ Olivier
Voilà ton code !!!.
Sub ()
Dim MyBase As Database
Dim MyRst1 As Recordset
Dim MyRst2 As Recordset
Dim Compteur1 As Integer
Dim Compteur2 As Integer
Dim Compteur3 As Integer
Dim NomCommande As Variant
Set MyBase = CurrentDb
Set MyRst1 = MyBase.OpenRecordset("Table1")
Set MyRst2 = MyBase.OpenRecordset("Table2")
With MyRst1
While Not .EOF
.Edit
NomCommande = !Commande
Compteur1 = ![Nombre de lot]
Compteur2 = 1
Compteur3 = 1
While Compteur2 <= Compteur1
For i = 1 To Compteur1
MyRst2.AddNew
MyRst2!Commande = NomCommande
MyRst2![Numéro de lot] = Compteur3
MyRst2.Update
Next
Compteur3 = Compteur3 + 1
Compteur2 = Compteur2 + 1
Wend
.Update
.MoveNext
Wend
End With
Set MyRst1 = Nothing
Set MyRst2 = Nothing
MyBase.Close
"Nobodyisperfect" <nobodyisperfect@ifrance.com> wrote in message
news:ujJuO79UGHA.736@TK2MSFTNGP12.phx.gbl...
Re BerloSconi,
Dans le code que je t'ai envoyé, il ne gère pas les données déjà
présentes dans la Table2 et je suppose que la relation entre la Table1 et
Table2 est de 1 à N.
Dim MyBase As Database Dim MyRst1 As Recordset Dim MyRst2 As Recordset Dim Compteur1 As Integer Dim Compteur2 As Integer Dim Compteur3 As Integer Dim NomCommande As Variant
Set MyBase = CurrentDb Set MyRst1 = MyBase.OpenRecordset("Table1") Set MyRst2 = MyBase.OpenRecordset("Table2")
With MyRst1 While Not .EOF .Edit NomCommande = !Commande Compteur1 = ![Nombre de lot] Compteur2 = 1 Compteur3 = 1 While Compteur2 <= Compteur1 For i = 1 To Compteur1 MyRst2.AddNew MyRst2!Commande = NomCommande MyRst2![Numéro de lot] = Compteur3 MyRst2.Update Next Compteur3 = Compteur3 + 1 Compteur2 = Compteur2 + 1 Wend .Update .MoveNext Wend End With
Set MyRst1 = Nothing Set MyRst2 = Nothing MyBase.Close
"Nobodyisperfect" wrote in message news:
Re BerloSconi,
Dans le code que je t'ai envoyé, il ne gère pas les données déjà présentes dans la Table2 et je suppose que la relation entre la Table1 et Table2 est de 1 à N.