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

ajouter un enregistrement avec variable

13 réponses
Avatar
miofans
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter une donnée variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub



j'ai fait plusieurs testes avc "AA" et autres mais rien à faire.

est ce que vous pouvez m'aider,

merci d'avance ,

miofans

10 réponses

1 2
Avatar
Michel__D
Bonjour,

miofans a écrit :
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements
suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter une donnée
variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub



j'ai fait plusieurs testes avc "AA" et autres mais rien à faire.

est ce que vous pouvez m'aider,

merci d'avance ,

miofans



Essaye avec ceci

mysql = "INSERT INTO essai (article) VALUES (" & AA & ");"
Avatar
miofans
Michel__D a écrit le 03/07/2010 à 23h38 :
Bonjour,

miofans a écrit :
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements
suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter une
donnée
variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub



j'ai fait plusieurs testes avc "AA" et autres mais rien à
faire.

est ce que vous pouvez m'aider,

merci d'avance ,

miofans




Essaye avec ceci

mysql = "INSERT INTO essai (article) VALUES (" & AA &
");"


Bonsoir,

si ça ce n'est pas du service rapide ...

merci cela fonctionne,

A bientot pour d'autre questions,

Miofans
Avatar
miofans
miofans a écrit le 04/07/2010 à 00h03 :
Michel__D a écrit le 03/07/2010 à 23h38 :
Bonjour,

miofans a écrit :
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements
suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter une
donnée
variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub



j'ai fait plusieurs testes avc "AA" et autres mais rien à
faire.

est ce que vous pouvez m'aider,

merci d'avance ,

miofans





Essaye avec ceci

mysql = "INSERT INTO essai (article) VALUES (" & AA &
");"



Bonsoir,

si ça ce n'est pas du service rapide ...

merci cela fonctionne,

A bientot pour d'autre questions,

Miofans


Bonsoir,

j'ai deja une autre question,

comment je fait pour récuperer toutes les valeurs de la premiere ligne d'une table 1 ?
extraire une valeur bien précise ?
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens davoir la réponse)
cela un certain nombre de fois en fonction d'une valeur dans la premiere ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)

Merci pour votre aide
miofan
Avatar
miofans
miofans a écrit le 04/07/2010 à 00h15 :
miofans a écrit le 04/07/2010 à 00h03 :
Michel__D a écrit le 03/07/2010 à 23h38 :
Bonjour,

miofans a écrit :
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements
suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter une
donnée
variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub



j'ai fait plusieurs testes avc "AA" et autres mais rien à
faire.

est ce que vous pouvez m'aider,

merci d'avance ,

miofans






Essaye avec ceci

mysql = "INSERT INTO essai (article) VALUES (" & AA &
");"




Bonsoir,

si ça ce n'est pas du service rapide ...

merci cela fonctionne,

A bientot pour d'autre questions,

Miofans



Bonsoir,

j'ai deja une autre question,

comment je fait pour récuperer toutes les valeurs de la premiere ligne
d'une table 1 ?
extraire une valeur bien précise ?
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens davoir la réponse)
cela un certain nombre de fois en fonction d'une valeur dans la premiere ligne
de la table 1
avec une boucle for ..to... next ... (je sais faire)

Merci pour votre aide
miofan


bonsoir,

je precise ma question:

je dois faire 2 boucle l'une dans l'autre,

boucle 1
comment je fait pour récuperer toutes les valeurs de la premiere ligne d'une table 1 ?
extraire une valeur bien précise pour correction ou utilisation comme variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1° ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan
Avatar
Michel__D
Bonjour,

miofans a écrit :
miofans a écrit le 04/07/2010 à 00h15 :
miofans a écrit le 04/07/2010 à 00h03 :
Michel__D a écrit le 03/07/2010 à 23h38 :
Bonjour,

miofans a écrit :
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements
suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter une
donnée
variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub



Essaye avec ceci

mysql = "INSERT INTO essai (article) VALUES (" & AA &
");"




Bonsoir,

si ça ce n'est pas du service rapide ...

merci cela fonctionne,

A bientot pour d'autre questions,

Miofans





bonsoir,

je precise ma question:

je dois faire 2 boucle l'une dans l'autre,

boucle 1
comment je fait pour récuperer toutes les valeurs de la premiere ligne d'une
table 1 ?



Ceci ne veut rien dire, précise ta pensée, tout le reste en découlera

extraire une valeur bien précise pour correction ou utilisation comme
variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la
réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1°
ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan



PS: Une réponse ci-dessous que j'ai déjà fourni et qui pourrait te servir :

Une autre alternative (nécessite l'ajout de la référence aux objets ADO)

Sub RequeteADO()
Dim oCn1 As ADODB.Connection
Dim oRst As New ADODB.Recordset
Dim sSQL As String

sSQL = "SELECT IdEenr, [SOMME] FROM LaTable WHERE IdEnr = 5;"

Set oCn1 = CurrentProject.Connection

oRst.Open sSQL, oCn1, adOpenForwardOnly, adLockReadOnly
If Not oRst.EOF Then
nValeur = oRst!SOMME
End If

oRst.Close
oCn1.Close
Set oRst = Nothing
Set oCn1 = Nothing
End Sub

PS:A adapter bien sur.
Avatar
miofans
Michel__D a écrit le 04/07/2010 à 11h36 :
Bonjour,

miofans a écrit :
miofans a écrit le 04/07/2010 à 00h15 :
miofans a écrit le 04/07/2010 à 00h03 :
Michel__D a écrit le 03/07/2010 à 23h38 :
Bonjour,

miofans a écrit :
Bonjour,

ci dessous mon code avec lequel je souhaite ajouter des enregistrements
suplementaires dans une table.
le probleme que je rencontre c'est que je n'arrive pas à ajouter
une
donnée
variable ici AA

Sub ouvrir_table()
Dim AA As Integer
DoCmd.OpenTable "essai"
DoCmd.SetWarnings False
For i = 1 To 10
AA = 10 + i
mysql = "INSERT INTO essai (article) VALUES (+AA+)"
DoCmd.RunSQL mysql
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub




Essaye avec ceci

mysql = "INSERT INTO essai (article) VALUES (" & AA &
");"





Bonsoir,

si ça ce n'est pas du service rapide ...

merci cela fonctionne,

A bientot pour d'autre questions,

Miofans







bonsoir,

je precise ma question:

je dois faire 2 boucle l'une dans l'autre,

boucle 1
comment je fait pour récuperer toutes les valeurs de la premiere ligne
d'une
table 1 ?




Ceci ne veut rien dire, précise ta pensée, tout le reste en
découlera

extraire une valeur bien précise pour correction ou utilisation comme
variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la
réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1°
ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan




PS: Une réponse ci-dessous que j'ai déjà fourni et qui
pourrait te servir :

Une autre alternative (nécessite l'ajout de la référence
aux objets ADO)

Sub RequeteADO()
Dim oCn1 As ADODB.Connection
Dim oRst As New ADODB.Recordset
Dim sSQL As String

sSQL = "SELECT IdEenr, [SOMME] FROM LaTable WHERE IdEnr = 5;"

Set oCn1 = CurrentProject.Connection

oRst.Open sSQL, oCn1, adOpenForwardOnly, adLockReadOnly
If Not oRst.EOF Then
nValeur = oRst!SOMME
End If

oRst.Close
oCn1.Close
Set oRst = Nothing
Set oCn1 = Nothing
End Sub

PS:A adapter bien sur.


Bonjour,

merci pour ta réponse,

je précise et je fais plus simple
1° je souhaite récuperer une des valeurs d'un champ de la 1° ligne de la table 1 pour faire une boucle (ex:8)
2° je souhaite récuperer toutes les valeurs des champs de la 1° ligne (table 1)
3° je souhaite modifier certaines valeurs
4° je souhaite coller ces valeurs sur la 1° ligne dans une nouvelle table 2
5° je souhaite faire l'opération 2,3 et 4 ==>8 fois dans la boucle afin d'avoir 8 lignes (8 pour l'exemple)
6° je souhaite refaire la boucle en passant à la 2° ligne de ma table 1

d'ou ma question comment je fais pour extraire les valeurs de la ligne 1 de la table 1 dans des variables,
puis de la ligne 2 etc...

Merci pour votre aide,

Miofan
Avatar
Michel__D
Re,

miofans a écrit :
Michel__D a écrit le 04/07/2010 à 11h36 :
Bonjour,





[...]

comment je fait pour récuperer toutes les valeurs de la premiere ligne
d'une
table 1 ?




Ceci ne veut rien dire, précise ta pensée, tout le reste en
découlera

extraire une valeur bien précise pour correction ou utilisation comme
variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la
réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1°
ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan




PS: Une réponse ci-dessous que j'ai déjà fourni et qui
pourrait te servir :

Une autre alternative (nécessite l'ajout de la référence
aux objets ADO)

Sub RequeteADO()
Dim oCn1 As ADODB.Connection
Dim oRst As New ADODB.Recordset
Dim sSQL As String

sSQL = "SELECT IdEenr, [SOMME] FROM LaTable WHERE IdEnr = 5;"

Set oCn1 = CurrentProject.Connection

oRst.Open sSQL, oCn1, adOpenForwardOnly, adLockReadOnly
If Not oRst.EOF Then
nValeur = oRst!SOMME
End If

oRst.Close
oCn1.Close
Set oRst = Nothing
Set oCn1 = Nothing
End Sub

PS:A adapter bien sur.


Bonjour,

merci pour ta réponse,

je précise et je fais plus simple
1° je souhaite récuperer une des valeurs d'un champ de la 1° ligne de la table
1 pour faire une boucle (ex:8)
2° je souhaite récuperer toutes les valeurs des champs de la 1° ligne (table
1)
3° je souhaite modifier certaines valeurs
4° je souhaite coller ces valeurs sur la 1° ligne dans une nouvelle table 2
5° je souhaite faire l'opération 2,3 et 4 ==>8 fois dans la boucle afin d'avoir
8 lignes (8 pour l'exemple)
6° je souhaite refaire la boucle en passant à la 2° ligne de ma table 1

d'ou ma question comment je fais pour extraire les valeurs de la ligne 1 de la
table 1 dans des variables,
puis de la ligne 2 etc...

Merci pour votre aide,

Miofan



Je persiste mais les extraits ci-dessous de tes demandes ne veulent rien dire :

"récuperer une des valeurs d'un champ de la 1° ligne de la table 1" et
"récuperer toutes les valeurs des champs de la 1° ligne (table 1)" et
"coller ces valeurs sur la 1° ligne dans une nouvelle table 2"

car les données ne sont pas forcément stocké dans un ordre défini, c'est à toi
qu'il revient de le définir d'ou le fait que l'on ne puisse pas répondre à tes
questions ne connaissant pas l'ordre dans lesquelles tu souhaite les extraire.

PS: Mais tu possède avec le code que j'ai fourni, un début de solution parmi d'autre.
Avatar
miofans
Michel__D a écrit le 04/07/2010 à 22h27 :
Re,

miofans a écrit :
Michel__D a écrit le 04/07/2010 à 11h36 :
Bonjour,







[...]

comment je fait pour récuperer toutes les valeurs de la premiere
ligne
d'une
table 1 ?





Ceci ne veut rien dire, précise ta pensée, tout le reste en
découlera

extraire une valeur bien précise pour correction ou utilisation
comme
variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la
réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1°
ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan





PS: Une réponse ci-dessous que j'ai déjà fourni et qui
pourrait te servir :

Une autre alternative (nécessite l'ajout de la référence
aux objets ADO)

Sub RequeteADO()
Dim oCn1 As ADODB.Connection
Dim oRst As New ADODB.Recordset
Dim sSQL As String

sSQL = "SELECT IdEenr, [SOMME] FROM LaTable WHERE IdEnr = 5;"

Set oCn1 = CurrentProject.Connection

oRst.Open sSQL, oCn1, adOpenForwardOnly, adLockReadOnly
If Not oRst.EOF Then
nValeur = oRst!SOMME
End If

oRst.Close
oCn1.Close
Set oRst = Nothing
Set oCn1 = Nothing
End Sub

PS:A adapter bien sur.



Bonjour,

merci pour ta réponse,

je précise et je fais plus simple
1° je souhaite récuperer une des valeurs d'un champ de la 1°
ligne de la table
1 pour faire une boucle (ex:8)
2° je souhaite récuperer toutes les valeurs des champs de la 1°
ligne (table
1)
3° je souhaite modifier certaines valeurs
4° je souhaite coller ces valeurs sur la 1° ligne dans une nouvelle
table 2
5° je souhaite faire l'opération 2,3 et 4 ==>8 fois dans la
boucle afin d'avoir
8 lignes (8 pour l'exemple)
6° je souhaite refaire la boucle en passant à la 2° ligne de ma
table 1

d'ou ma question comment je fais pour extraire les valeurs de la ligne 1 de la
table 1 dans des variables,
puis de la ligne 2 etc...

Merci pour votre aide,

Miofan




Je persiste mais les extraits ci-dessous de tes demandes ne veulent rien dire :

"récuperer une des valeurs d'un champ de la 1° ligne de la
table 1" et
"récuperer toutes les valeurs des champs de la 1° ligne (table
1)" et
"coller ces valeurs sur la 1° ligne dans une nouvelle table 2"

car les données ne sont pas forcément stocké dans un ordre
défini, c'est à toi
qu'il revient de le définir d'ou le fait que l'on ne puisse pas
répondre à tes
questions ne connaissant pas l'ordre dans lesquelles tu souhaite les extraire.

PS: Mais tu possède avec le code que j'ai fourni, un début de
solution parmi d'autre.


bonsoir, voila ce que j'ai bricolé:

Sub ouvrir_table2()
Dim sSQL As String
DoCmd.SetWarnings False
sSQL = "SELECT N°, [RefPF] FROM TPlandeproduction WHERE N° = 5;"
'mySQL = "SELECT N°, [RefPF] FROM 'T Plan de production' WHERE N° = 5;"
For i = 1 To 20
mySQL = "Insert into Données (RefPF,TpsMachine) Values ('" & RefPF & "',7);"
DoCmd.RunSQL mySQL
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub

avec la ligne => mySQL = "Insert into Données (RefPF,TpsMachine) Values ('" & RefPF & "',7);"
j'arrive à ecrire une ligne suplémentaire dans la table Données, la valeur 7 est bien enregistrée mais la valeur RefPF n'est pas enregistrées.

Ou est l'erreur ? je suppose dans l'extraction !

Merci pour vote aide

Miofans
Avatar
miofans
miofans a écrit le 04/07/2010 à 23h15 :
Michel__D a écrit le 04/07/2010 à 22h27 :
Re,

miofans a écrit :
Michel__D a écrit le 04/07/2010 à 11h36 :
Bonjour,









[...]

comment je fait pour récuperer toutes les valeurs de la premiere
ligne
d'une
table 1 ?






Ceci ne veut rien dire, précise ta pensée, tout le reste en
découlera

extraire une valeur bien précise pour correction ou utilisation
comme
variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la
réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1°
ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan






PS: Une réponse ci-dessous que j'ai déjà fourni et qui
pourrait te servir :

Une autre alternative (nécessite l'ajout de la
référence
aux objets ADO)

Sub RequeteADO()
Dim oCn1 As ADODB.Connection
Dim oRst As New ADODB.Recordset
Dim sSQL As String

sSQL = "SELECT IdEenr, [SOMME] FROM LaTable WHERE IdEnr = 5;"

Set oCn1 = CurrentProject.Connection

oRst.Open sSQL, oCn1, adOpenForwardOnly, adLockReadOnly
If Not oRst.EOF Then
nValeur = oRst!SOMME
End If

oRst.Close
oCn1.Close
Set oRst = Nothing
Set oCn1 = Nothing
End Sub

PS:A adapter bien sur.




Bonjour,

merci pour ta réponse,

je précise et je fais plus simple
1° je souhaite récuperer une des valeurs d'un champ de la 1°
ligne de la table
1 pour faire une boucle (ex:8)
2° je souhaite récuperer toutes les valeurs des champs de la

ligne (table
1)
3° je souhaite modifier certaines valeurs
4° je souhaite coller ces valeurs sur la 1° ligne dans une nouvelle
table 2
5° je souhaite faire l'opération 2,3 et 4 ==>8 fois dans la
boucle afin d'avoir
8 lignes (8 pour l'exemple)
6° je souhaite refaire la boucle en passant à la 2° ligne de
ma
table 1

d'ou ma question comment je fais pour extraire les valeurs de la ligne 1 de
la
table 1 dans des variables,
puis de la ligne 2 etc...

Merci pour votre aide,

Miofan





Je persiste mais les extraits ci-dessous de tes demandes ne veulent rien dire
:

"récuperer une des valeurs d'un champ de la 1° ligne de la
table 1" et
"récuperer toutes les valeurs des champs de la 1° ligne (table
1)" et
"coller ces valeurs sur la 1° ligne dans une nouvelle table 2"

car les données ne sont pas forcément stocké dans un
ordre
défini, c'est à toi
qu'il revient de le définir d'ou le fait que l'on ne puisse pas
répondre à tes
questions ne connaissant pas l'ordre dans lesquelles tu souhaite les extraire.

PS: Mais tu possède avec le code que j'ai fourni, un début de
solution parmi d'autre.



bonsoir, voila ce que j'ai bricolé:

Sub ouvrir_table2()
Dim sSQL As String
DoCmd.SetWarnings False
sSQL = "SELECT N°, [RefPF] FROM TPlandeproduction WHERE N° =
5;"
'mySQL = "SELECT N°, [RefPF] FROM 'T Plan de production' WHERE N°
= 5;"
For i = 1 To 20
mySQL = "Insert into Données (RefPF,TpsMachine) Values ('"
& RefPF & "',7);"
DoCmd.RunSQL mySQL
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub

avec la ligne => mySQL = "Insert into Données (RefPF,TpsMachine)
Values ('" & RefPF & "',7);"
j'arrive à ecrire une ligne suplémentaire dans la table
Données, la valeur 7 est bien enregistrée mais la valeur RefPF
n'est pas enregistrées.

Ou est l'erreur ? je suppose dans l'extraction !

Merci pour vote aide

Miofans


bonsoir,

je vous informe au fur et à mesure que j'avance, voila ce que j'arive à faire:

Sub ouvrir_table2()
Dim sSQL As String
DoCmd.SetWarnings False
For i2 = 1 To 5
compteur = DLookup("TpsMachine", "TPlandeproduction", "N°= " & i2)
TpsMachSolde = compteur
For i = 1 To compteur
mySQL = "Insert into Données (TpsMachine) Values ('" & TpsMachSolde & "');"
DoCmd.RunSQL mySQL
TpsMachSolde = TpsMachSolde - 1
Next i
Next i2
DoCmd.Close
DoCmd.SetWarnings True
End Sub

j'ai reussi à extraire ma valeur pour faire ma 1° boucle,
maintenant je doit remplacer la valeur 5 de la boucle 'for i2 = 1 to 5' par le nombre d'enregistrement dans la table "TPlandeproduction"

comment compter le nombre d'enregistrement dans une table ?
comment extraire plusieurs valeurs dans la ligne 1 de la table "TPlandeproduction" ?

je cherche encore avec vos proposition mais por l'instant je n'y arrive pas.

merci encore de votre aide,

Miofans
Avatar
miofan
miofans a écrit le 05/07/2010 à 00h42 :
miofans a écrit le 04/07/2010 à 23h15 :
Michel__D a écrit le 04/07/2010 à 22h27 :
Re,

miofans a écrit :
Michel__D a écrit le 04/07/2010 à 11h36 :
Bonjour,











[...]

comment je fait pour récuperer toutes les valeurs de la premiere
ligne
d'une
table 1 ?







Ceci ne veut rien dire, précise ta pensée, tout le reste en
découlera

extraire une valeur bien précise pour correction ou utilisation
comme
variable ?
boucle 2
modifier quelques valeurs (je sais faire),
ensuite les coller dans une autre table 2 (je viens d'avoir la
réponse)
cela un certain nombre de fois en fonction d'une valeur dans la 1°
ligne de la table 1
avec une boucle for ..to... next ... (je sais faire)
next 2
next 1 ( je prend la 2° ligne et ainsi de suite)

Merci pour votre aide
miofan







PS: Une réponse ci-dessous que j'ai déjà fourni et qui
pourrait te servir :

Une autre alternative (nécessite l'ajout de la
référence
aux objets ADO)

Sub RequeteADO()
Dim oCn1 As ADODB.Connection
Dim oRst As New ADODB.Recordset
Dim sSQL As String

sSQL = "SELECT IdEenr, [SOMME] FROM LaTable WHERE IdEnr = 5;"

Set oCn1 = CurrentProject.Connection

oRst.Open sSQL, oCn1, adOpenForwardOnly, adLockReadOnly
If Not oRst.EOF Then
nValeur = oRst!SOMME
End If

oRst.Close
oCn1.Close
Set oRst = Nothing
Set oCn1 = Nothing
End Sub

PS:A adapter bien sur.





Bonjour,

merci pour ta réponse,

je précise et je fais plus simple
1° je souhaite récuperer une des valeurs d'un champ de la 1°
ligne de la table
1 pour faire une boucle (ex:8)
2° je souhaite récuperer toutes les valeurs des champs de la

ligne (table
1)
3° je souhaite modifier certaines valeurs
4° je souhaite coller ces valeurs sur la 1° ligne dans une nouvelle
table 2
5° je souhaite faire l'opération 2,3 et 4 ==>8 fois dans la
boucle afin d'avoir
8 lignes (8 pour l'exemple)
6° je souhaite refaire la boucle en passant à la 2° ligne de
ma
table 1

d'ou ma question comment je fais pour extraire les valeurs de la ligne 1 de
la
table 1 dans des variables,
puis de la ligne 2 etc...

Merci pour votre aide,

Miofan






Je persiste mais les extraits ci-dessous de tes demandes ne veulent rien dire
:

"récuperer une des valeurs d'un champ de la 1° ligne de la
table 1" et
"récuperer toutes les valeurs des champs de la 1° ligne
(table
1)" et
"coller ces valeurs sur la 1° ligne dans une nouvelle table 2"

car les données ne sont pas forcément stocké dans un
ordre
défini, c'est à toi
qu'il revient de le définir d'ou le fait que l'on ne puisse pas
répondre à tes
questions ne connaissant pas l'ordre dans lesquelles tu souhaite les
extraire.

PS: Mais tu possède avec le code que j'ai fourni, un début de
solution parmi d'autre.




bonsoir, voila ce que j'ai bricolé:

Sub ouvrir_table2()
Dim sSQL As String
DoCmd.SetWarnings False
sSQL = "SELECT N°, [RefPF] FROM TPlandeproduction WHERE N° =
5;"
'mySQL = "SELECT N°, [RefPF] FROM 'T Plan de production' WHERE N°
= 5;"
For i = 1 To 20
mySQL = "Insert into Données (RefPF,TpsMachine) Values ('"
& RefPF & "',7);"
DoCmd.RunSQL mySQL
Next i
DoCmd.Close
DoCmd.SetWarnings True
End Sub

avec la ligne => mySQL = "Insert into Données
(RefPF,TpsMachine)
Values ('" & RefPF & "',7);"
j'arrive à ecrire une ligne suplémentaire dans la table
Données, la valeur 7 est bien enregistrée mais la valeur RefPF
n'est pas enregistrées.

Ou est l'erreur ? je suppose dans l'extraction !

Merci pour vote aide

Miofans



bonsoir,

je vous informe au fur et à mesure que j'avance, voila ce que j'arive
à faire:

Sub ouvrir_table2()
Dim sSQL As String
DoCmd.SetWarnings False
For i2 = 1 To 5
compteur = DLookup("TpsMachine", "TPlandeproduction",
"N°= " & i2)
TpsMachSolde = compteur
For i = 1 To compteur
mySQL = "Insert into Données (TpsMachine) Values ('" &
TpsMachSolde & "');"
DoCmd.RunSQL mySQL
TpsMachSolde = TpsMachSolde - 1
Next i
Next i2
DoCmd.Close
DoCmd.SetWarnings True
End Sub

j'ai reussi à extraire ma valeur pour faire ma 1° boucle,
maintenant je doit remplacer la valeur 5 de la boucle 'for i2 = 1 to 5' par le
nombre d'enregistrement dans la table "TPlandeproduction"

comment compter le nombre d'enregistrement dans une table ?
comment extraire plusieurs valeurs dans la ligne 1 de la table
"TPlandeproduction" ?

je cherche encore avec vos proposition mais por l'instant je n'y arrive pas.

merci encore de votre aide,

Miofans


Bonjour,

j'avance encore un peu plus, j'ai touver la fonction dcount pour compter les ligne de ma table,
j'ai donc ceci qui fonctionne:

Sub ouvrir_table()
'cette macro fonctionne
Dim sSQL As String
DoCmd.SetWarnings False
compteur2 = DCount("N°", "TPlandeproduction")
For i2 = 1 To compteur2
MsgBox "#" & RefPF & "#" & Komponen & "#"
compteur = DLookup("TpsMachine", "TPlandeproduction", "N°= " & i2)
TpsMachSolde = compteur
For i = 1 To compteur
RefPF = 1698000 + i
Komponen = 5555 + i
mySql = "Insert into Données (RefPF,Komponen,TpsMachine) Values ('" & RefPF & "','" & Komponen & "','" & TpsMachSolde & "');"
MsgBox "#" & RefPF & "#" & Komponen & "#"
DoCmd.RunSQL mySql
TpsMachSolde = TpsMachSolde - 1
Next i
Next i2
DoCmd.Close
DoCmd.SetWarnings True
End Sub

il me reste donc à trouver comment faire pour extraire plusieurs valeurs pour une ligne bien specifique. Il y à la fonction "DLoopkup" mais elle n'extrait qu'une valeur alors que j'ai besoin d'extraire plusieurs valeurs.

n'esiter pas à me donner un coup de main car en ce moment je passe plusieurs heures par jour sur ce probleme. Si vous pouvez m'aider également à nettoyer mon programme de ses imperfections.

Merci à vous tous,

Miofans
1 2