Requete sql select vba
Fermé
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
-
Modifié par eljojo_e le 7/10/2011 à 14:46
blux Messages postés 26730 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 20 mars 2025 - 13 oct. 2011 à 11:16
blux Messages postés 26730 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 20 mars 2025 - 13 oct. 2011 à 11:16
5 réponses
blux
Messages postés
26730
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
20 mars 2025
3 332
7 oct. 2011 à 16:02
7 oct. 2011 à 16:02
Salut,
beaucoup de confusion dans ton code.
Tu cherches à récupérer quoi, à partir de quoi, et pour en faire quoi ?
beaucoup de confusion dans ton code.
Tu cherches à récupérer quoi, à partir de quoi, et pour en faire quoi ?
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
154
8 oct. 2011 à 17:57
8 oct. 2011 à 17:57
En faite c'est pour comparé des codes insee existant dans une table (T Pgm TX) qui a été importé d'un fichier excel à une base contenant les communes et leurs code insee qui sont exacte (T liste des communes). Comme je suis sur que l'orthographe des commune dans les 2 tables ont identique il me reste a comparer les code insee.
sql = "SELECT [T Liste des communes].[code INSEE] FROM [T Liste des communes] WHERE [T Liste des communes].Commune =" & az & ""
az étant le nom de commune de l'enregistrement en cour après j'ai plus qu'a comparé mais j'arrive pas à executer la requete sql.
sql = "SELECT [T Liste des communes].[code INSEE] FROM [T Liste des communes] WHERE [T Liste des communes].Commune =" & az & ""
az étant le nom de commune de l'enregistrement en cour après j'ai plus qu'a comparé mais j'arrive pas à executer la requete sql.
moiced59
Messages postés
1145
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
18 août 2014
60
9 oct. 2011 à 08:10
9 oct. 2011 à 08:10
bonjour
Au début de ton code tu utilise un recordset fais de meme a la place du docmd.runsql
Au début de ton code tu utilise un recordset fais de meme a la place du docmd.runsql
blux
Messages postés
26730
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
20 mars 2025
3 332
9 oct. 2011 à 15:46
9 oct. 2011 à 15:46
Tu peux plutôt utiliser 'dlookup', regarde l'aide et tu verras que c'est la meilleure solution à problème (pas de requête, ni de recordset)...
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
154
13 oct. 2011 à 09:01
13 oct. 2011 à 09:01
Dlookup est très long à executer surtout si on doit l'utiliser sur 3000 enregistrement
blux
Messages postés
26730
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
20 mars 2025
3 332
Modifié par blux le 13/10/2011 à 09:56
Modifié par blux le 13/10/2011 à 09:56
Justement, utiliser dlookup est plus rapide que de créer 3000 recordset pour les parcourir.
Si le champ commune possède un index, l'accès à l'information sera immédiat.
Si le champ commune possède un index, l'accès à l'information sera immédiat.
dlookup("[code INSEE]","[T Liste des communes]","commune = '" & az & "'")
blux
Messages postés
26730
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
20 mars 2025
3 332
Modifié par blux le 13/10/2011 à 11:16
Modifié par blux le 13/10/2011 à 11:16
Ca sera toujours plus rapide que de faire du SQL, car access ne se comporte pas comme un vrai sgbd quand il est en réseau : il rapatrie toutes les données en local avant de faire son WHERE...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
154
13 oct. 2011 à 09:02
13 oct. 2011 à 09:02
"Au début de ton code tu utilise un recordset fais de meme a la place du docmd.runsql"
Comment sa utiliser un recorset ?
Comment sa utiliser un recorset ?