bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message
d'erreur incompréhensible et mal expliqué entrave ma progression.
pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment
trans mettre mon paramètre, et pour finir je mettrais tout celà dans une
boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui réponds à
mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je veux
voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée pour un
des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message
d'erreur incompréhensible et mal expliqué entrave ma progression.
pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment
trans mettre mon paramètre, et pour finir je mettrais tout celà dans une
boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui réponds à
mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je veux
voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée pour un
des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message
d'erreur incompréhensible et mal expliqué entrave ma progression.
pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment
trans mettre mon paramètre, et pour finir je mettrais tout celà dans une
boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui réponds à
mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je veux
voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée pour un
des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour.
si on simplifie le problème, il existe 2 sortes de requêtes, les requêtes
action et les requêtes sélection. Les requêtes action, telles requête
modification, requête suppression etc.... ne sont pas affichées mais
exécutées.
L'exécution peut être lancée de plusieurs façons avec le même résultat:
CurrentDb.Execute "requête1" ' requête enregistrée
CurrentDb.Execute "UPDATE table1 SET table1.Madate = Date();"
les requêtes sélection, en général, sont des recordset qui permettent
d'exécuter des tâches en bouclant sur tout ou partie du recordset. Sur
chaque enregistrement un travail spécifique sera exécuté.
exemple:
Dim Rs As DAO.Recordset
Set Rs = CurrentDb.OpenRecordset("requête1") 'requête enregistrée
If (Not Rs.BOF) And (Not Rs.EOF) Then
Do Until Rs.EOF
MsgBox Rs!Numéro
Rs.MoveNext
Loop
End If
Set Rs = Nothing
(cocher la librairie dao dans les références)
la ligne Set Rs = CurrentDb.OpenRecordset("requête1")
pourra être remplacée par la ligne:
Set Rs = CurrentDb.OpenRecordset("SELECT table1.* FROM table1")
je te conseille de voir l'aide en ligne sur les requêtes car les exemples
ci-dessus ne sont que deux petits exemples qui ne représentent que
0.000001%
des possibilités sur les requêtes. Je dirais que Access ne peut pas vivre
sans requêtes.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"marc.dufresne" a écrit dans le
message de news:4079b8ac$0$15664$bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
messaged'erreur incompréhensible et mal expliqué entrave ma progression.
pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
commenttrans mettre mon paramètre, et pour finir je mettrais tout celà dans une
boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui réponds
à
mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux
voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée pour
un
des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour.
si on simplifie le problème, il existe 2 sortes de requêtes, les requêtes
action et les requêtes sélection. Les requêtes action, telles requête
modification, requête suppression etc.... ne sont pas affichées mais
exécutées.
L'exécution peut être lancée de plusieurs façons avec le même résultat:
CurrentDb.Execute "requête1" ' requête enregistrée
CurrentDb.Execute "UPDATE table1 SET table1.Madate = Date();"
les requêtes sélection, en général, sont des recordset qui permettent
d'exécuter des tâches en bouclant sur tout ou partie du recordset. Sur
chaque enregistrement un travail spécifique sera exécuté.
exemple:
Dim Rs As DAO.Recordset
Set Rs = CurrentDb.OpenRecordset("requête1") 'requête enregistrée
If (Not Rs.BOF) And (Not Rs.EOF) Then
Do Until Rs.EOF
MsgBox Rs!Numéro
Rs.MoveNext
Loop
End If
Set Rs = Nothing
(cocher la librairie dao dans les références)
la ligne Set Rs = CurrentDb.OpenRecordset("requête1")
pourra être remplacée par la ligne:
Set Rs = CurrentDb.OpenRecordset("SELECT table1.* FROM table1")
je te conseille de voir l'aide en ligne sur les requêtes car les exemples
ci-dessus ne sont que deux petits exemples qui ne représentent que
0.000001%
des possibilités sur les requêtes. Je dirais que Access ne peut pas vivre
sans requêtes.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"marc.dufresne" <pasde.mail.direct.marcdufresne@free.fr> a écrit dans le
message de news:4079b8ac$0$15664$626a14ce@news.free.fr...
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message
d'erreur incompréhensible et mal expliqué entrave ma progression.
pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment
trans mettre mon paramètre, et pour finir je mettrais tout celà dans une
boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui réponds
à
mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux
voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée pour
un
des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour.
si on simplifie le problème, il existe 2 sortes de requêtes, les requêtes
action et les requêtes sélection. Les requêtes action, telles requête
modification, requête suppression etc.... ne sont pas affichées mais
exécutées.
L'exécution peut être lancée de plusieurs façons avec le même résultat:
CurrentDb.Execute "requête1" ' requête enregistrée
CurrentDb.Execute "UPDATE table1 SET table1.Madate = Date();"
les requêtes sélection, en général, sont des recordset qui permettent
d'exécuter des tâches en bouclant sur tout ou partie du recordset. Sur
chaque enregistrement un travail spécifique sera exécuté.
exemple:
Dim Rs As DAO.Recordset
Set Rs = CurrentDb.OpenRecordset("requête1") 'requête enregistrée
If (Not Rs.BOF) And (Not Rs.EOF) Then
Do Until Rs.EOF
MsgBox Rs!Numéro
Rs.MoveNext
Loop
End If
Set Rs = Nothing
(cocher la librairie dao dans les références)
la ligne Set Rs = CurrentDb.OpenRecordset("requête1")
pourra être remplacée par la ligne:
Set Rs = CurrentDb.OpenRecordset("SELECT table1.* FROM table1")
je te conseille de voir l'aide en ligne sur les requêtes car les exemples
ci-dessus ne sont que deux petits exemples qui ne représentent que
0.000001%
des possibilités sur les requêtes. Je dirais que Access ne peut pas vivre
sans requêtes.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"marc.dufresne" a écrit dans le
message de news:4079b8ac$0$15664$bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
messaged'erreur incompréhensible et mal expliqué entrave ma progression.
pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
commenttrans mettre mon paramètre, et pour finir je mettrais tout celà dans une
boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui réponds
à
mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux
voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée pour
un
des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour Marc
Il faut que tu charges les références DAO 3.x
Une requête Selection ne s'exécute pas mais s'ouvre seulement donc le
.Execute ne marchera pas.
Tu ne peux définir une requête temporaire (cest à dire sans nom) que pour
les requêtes Action car la méthode OpenQuery impose un nom de requête,
donc il faut supprimer la requête après son ouverture.
Pour obtenir ce que tu veux, regardes le code ci-dessous
Sub Test701()
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database
strSQL = "select * from tClient where Ville_Client=""Paris"";"
Set bd = CurrentDb
' Création de la requête
Set marequête = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
Sub Test702()
' la même mais la ville est saisie via une InputBox
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database, reponse As String
reponse = InputBox("Quelle ville ?")
If Len(reponse) = 0 Then Exit Sub
strSQL = "select * from tClient where Ville_Client='" & reponse &
"';"
Set bd = CurrentDb
' Création de la requête
Set marequete = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
A+
Eric
"marc.dufresne" écrivait
news:4079b8ac$0$15664$:bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour Marc
Il faut que tu charges les références DAO 3.x
Une requête Selection ne s'exécute pas mais s'ouvre seulement donc le
.Execute ne marchera pas.
Tu ne peux définir une requête temporaire (cest à dire sans nom) que pour
les requêtes Action car la méthode OpenQuery impose un nom de requête,
donc il faut supprimer la requête après son ouverture.
Pour obtenir ce que tu veux, regardes le code ci-dessous
Sub Test701()
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database
strSQL = "select * from tClient where Ville_Client=""Paris"";"
Set bd = CurrentDb
' Création de la requête
Set marequête = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
Sub Test702()
' la même mais la ville est saisie via une InputBox
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database, reponse As String
reponse = InputBox("Quelle ville ?")
If Len(reponse) = 0 Then Exit Sub
strSQL = "select * from tClient where Ville_Client='" & reponse &
"';"
Set bd = CurrentDb
' Création de la requête
Set marequete = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
A+
Eric
"marc.dufresne" <pasde.mail.direct.marcdufresne@free.fr> écrivait
news:4079b8ac$0$15664$626a14ce@news.free.fr:
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour Marc
Il faut que tu charges les références DAO 3.x
Une requête Selection ne s'exécute pas mais s'ouvre seulement donc le
.Execute ne marchera pas.
Tu ne peux définir une requête temporaire (cest à dire sans nom) que pour
les requêtes Action car la méthode OpenQuery impose un nom de requête,
donc il faut supprimer la requête après son ouverture.
Pour obtenir ce que tu veux, regardes le code ci-dessous
Sub Test701()
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database
strSQL = "select * from tClient where Ville_Client=""Paris"";"
Set bd = CurrentDb
' Création de la requête
Set marequête = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
Sub Test702()
' la même mais la ville est saisie via une InputBox
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database, reponse As String
reponse = InputBox("Quelle ville ?")
If Len(reponse) = 0 Then Exit Sub
strSQL = "select * from tClient where Ville_Client='" & reponse &
"';"
Set bd = CurrentDb
' Création de la requête
Set marequete = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
A+
Eric
"marc.dufresne" écrivait
news:4079b8ac$0$15664$:bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour Marc
Il faut que tu charges les références DAO 3.x
Une requête Selection ne s'exécute pas mais s'ouvre seulement donc le
.Execute ne marchera pas.
Tu ne peux définir une requête temporaire (cest à dire sans nom) que pour
les requêtes Action car la méthode OpenQuery impose un nom de requête,
donc il faut supprimer la requête après son ouverture.
Pour obtenir ce que tu veux, regardes le code ci-dessous
Sub Test701()
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database
strSQL = "select * from tClient where Ville_Client=""Paris"";"
Set bd = CurrentDb
' Création de la requête
Set marequête = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
Sub Test702()
' la même mais la ville est saisie via une InputBox
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database, reponse As String
reponse = InputBox("Quelle ville ?")
If Len(reponse) = 0 Then Exit Sub
strSQL = "select * from tClient where Ville_Client='" & reponse &
"';"
Set bd = CurrentDb
' Création de la requête
Set marequete = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
A+
Eric
"marc.dufresne" écrivait
news:4079b8ac$0$15664$:bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour Marc
Il faut que tu charges les références DAO 3.x
Une requête Selection ne s'exécute pas mais s'ouvre seulement donc le
.Execute ne marchera pas.
Tu ne peux définir une requête temporaire (cest à dire sans nom) que pour
les requêtes Action car la méthode OpenQuery impose un nom de requête,
donc il faut supprimer la requête après son ouverture.
Pour obtenir ce que tu veux, regardes le code ci-dessous
Sub Test701()
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database
strSQL = "select * from tClient where Ville_Client=""Paris"";"
Set bd = CurrentDb
' Création de la requête
Set marequête = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
Sub Test702()
' la même mais la ville est saisie via une InputBox
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database, reponse As String
reponse = InputBox("Quelle ville ?")
If Len(reponse) = 0 Then Exit Sub
strSQL = "select * from tClient where Ville_Client='" & reponse &
"';"
Set bd = CurrentDb
' Création de la requête
Set marequete = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
A+
Eric
"marc.dufresne" <pasde.mail.direct.marcdufresne@free.fr> écrivait
news:4079b8ac$0$15664$626a14ce@news.free.fr:
bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
Bonjour Marc
Il faut que tu charges les références DAO 3.x
Une requête Selection ne s'exécute pas mais s'ouvre seulement donc le
.Execute ne marchera pas.
Tu ne peux définir une requête temporaire (cest à dire sans nom) que pour
les requêtes Action car la méthode OpenQuery impose un nom de requête,
donc il faut supprimer la requête après son ouverture.
Pour obtenir ce que tu veux, regardes le code ci-dessous
Sub Test701()
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database
strSQL = "select * from tClient where Ville_Client=""Paris"";"
Set bd = CurrentDb
' Création de la requête
Set marequête = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
Sub Test702()
' la même mais la ville est saisie via une InputBox
Dim strSQL As String, marequete As DAO.QueryDef
Dim bd As DAO.Database, reponse As String
reponse = InputBox("Quelle ville ?")
If Len(reponse) = 0 Then Exit Sub
strSQL = "select * from tClient where Ville_Client='" & reponse &
"';"
Set bd = CurrentDb
' Création de la requête
Set marequete = bd.CreateQueryDef("Temp", strSQL)
'Ouverture de la requêe et affichage à l'écran
DoCmd.OpenQuery "Temp"
' Suppresion de la requête
bd.QueryDefs.Delete "Temp"
Set marequete = Nothing
Set bd = Nothing
End Sub
A+
Eric
"marc.dufresne" écrivait
news:4079b8ac$0$15664$:bonjour à toutes et tous
voilà j'ai essayé d'écrire quelques lignes de code, mais de nombreux
message d'erreur incompréhensible et mal expliqué entrave ma
progression. pourriez vous m'expliquer mmes erreurs .
je désire, dans un premier temps, obtenir dans une table type excel le
résultat d'une requête. ensuite créer une rquête paramétrée, donc là
comment trans mettre mon paramètre, et pour finir je mettrais tout
celà dans une boucle pour changer de paramètre
voici mes lignes de code
Sub Extraction2()
Dim MaBd As Database
Dim Marequete As QueryDef
Dim MonSql As String
Dim record As Recordset
Set MaBd = CurrentDb
MonSql = "SELECT * FROM personnels WHERE (((personnels.NOM) > > ""DUFRESNE""));"
Set Marequete = MaBd.CreateQueryDef("", MonSql)
Set record = Marequete.OpenRecordset
End Sub
j'obtiens le message d'erreur "Incompatibilité de type"
pour la ligne Set record=Marequete.OpenRecordset
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("test", MonSql)
Set record = test.OpenRecordset
là le message d'erreur" objet requis"
pour la ligne Set record =test.OpenRecordset
alors que la requete "test" a bien été créée!
j'ai essayé aussi
Set record="test".OpenRecordset
mais il est impossible de compiler le programe
j'ai donc essayé
DoCmd.OpenQuery "test", acViewNormal, acReadOnly
là ça fonctionne bien je peux voir la requete s'afficher et qui
réponds à mon paramètre
mais si je ne veux pas que cette requête "test" soit enregistrée, je
veux voir que le résultat
j'ai donc essayé ceci
Set Marequete = MaBd.CreateQueryDef("", MonSql)
DoCmd.OpenQuery Marequete
j'obtiens comme messsage d'erreur "le type d'une expression entrée
pour un des arguments est incorrect"
et avec
DoCmd.OpenQuery "Marequete"
le message d'erreur "impossible de trouver l'objet Marequete"
je vous remercie d'avance pour votre aide
MonSql = "SELECT * FROM personnels WHERE (personnels.NOM) = '" & var & "';"
là cela fonctionne mais je n'arrive pas à rechercher que sur une partie du
nom en incluant l'étoile *
MonSql = "SELECT * FROM personnels WHERE (personnels.NOM) = '" & var & "';"
là cela fonctionne mais je n'arrive pas à rechercher que sur une partie du
nom en incluant l'étoile *
MonSql = "SELECT * FROM personnels WHERE (personnels.NOM) = '" & var & "';"
là cela fonctionne mais je n'arrive pas à rechercher que sur une partie du
nom en incluant l'étoile *
Salut,
"marc.dufresne"MonSql = "SELECT * FROM personnels WHERE (personnels.NOM) = '" & var &
"';"
là cela fonctionne mais je n'arrive pas à rechercher que sur une partie
du
nom en incluant l'étoile *
"Select * From personnels Where [Nom] Like '" & var & "*';"
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
Salut,
"marc.dufresne"
MonSql = "SELECT * FROM personnels WHERE (personnels.NOM) = '" & var &
"';"
là cela fonctionne mais je n'arrive pas à rechercher que sur une partie
du
nom en incluant l'étoile *
"Select * From personnels Where [Nom] Like '" & var & "*';"
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
Salut,
"marc.dufresne"MonSql = "SELECT * FROM personnels WHERE (personnels.NOM) = '" & var &
"';"
là cela fonctionne mais je n'arrive pas à rechercher que sur une partie
du
nom en incluant l'étoile *
"Select * From personnels Where [Nom] Like '" & var & "*';"
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------