[VBA] Récupérer le résultat d'une requête SQL
Fermé
eXqO
Messages postés
49
Date d'inscription
vendredi 25 avril 2008
Statut
Membre
Dernière intervention
26 septembre 2009
-
15 juin 2009 à 17:00
eXqO Messages postés 49 Date d'inscription vendredi 25 avril 2008 Statut Membre Dernière intervention 26 septembre 2009 - 16 juin 2009 à 11:57
eXqO Messages postés 49 Date d'inscription vendredi 25 avril 2008 Statut Membre Dernière intervention 26 septembre 2009 - 16 juin 2009 à 11:57
Bonjour,
Tout d'abord je tiens à préciser que je suis novice en VBA ! ;)
Voici mon problème, je suis en possession d'une requête SQL qui me fournie un certain nombre de statistique que j'aimerai incorporer dans un tableau Excel à l'aide d'une macro (je précise que ça se fera de façon régulière, toute les semaine)
J'ai beau chercher sur internet avec mon ami Google...j'ai pas trouvé grand chose pour m'aider à part l'objet QueryDef dont l'utilisation n'a pas été comprise...:s
Merci d'avance !
Tout d'abord je tiens à préciser que je suis novice en VBA ! ;)
Voici mon problème, je suis en possession d'une requête SQL qui me fournie un certain nombre de statistique que j'aimerai incorporer dans un tableau Excel à l'aide d'une macro (je précise que ça se fera de façon régulière, toute les semaine)
J'ai beau chercher sur internet avec mon ami Google...j'ai pas trouvé grand chose pour m'aider à part l'objet QueryDef dont l'utilisation n'a pas été comprise...:s
Merci d'avance !
A voir également:
- [VBA] Récupérer le résultat d'une requête SQL
- Recuperer message whatsapp supprimé - Guide
- Recuperer video youtube - Guide
- Compte piraté facebook comment le recuperer - Guide
- Récupérer mon compte facebook désactivé - Guide
- Recuperer le son d'une video - Guide
4 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 312
15 juin 2009 à 18:22
15 juin 2009 à 18:22
Re,
il te faut trouver comment te connecter à ta database; je n'ai pas trouver le script pour PL:SQL mais peut-être que ceux d'oracle conviennent. regarde ce site
https://www.connectionstrings.com/
Je te mets ci dessous un extrait d' exemple très basique " pour le principe" de requête avec ADO dans une base de données nommée "plage"(excel en l'occurence)
le résultat s"inscrit à partir de la cellule A2 dans excel
la partie connexion est en italique à remplacer par ton script de connexion à PL/
il te faut trouver comment te connecter à ta database; je n'ai pas trouver le script pour PL:SQL mais peut-être que ceux d'oracle conviennent. regarde ce site
https://www.connectionstrings.com/
Je te mets ci dessous un extrait d' exemple très basique " pour le principe" de requête avec ADO dans une base de données nommée "plage"(excel en l'occurence)
le résultat s"inscrit à partir de la cellule A2 dans excel
la partie connexion est en italique à remplacer par ton script de connexion à PL/
Dim source As Object Dim requete As Object Dim texte_SQL As String test = plage 'connexion ADO au fichier Set source = CreateObject("ADODB.Connection") source.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & chemin & fich & ";Extended Properties=""Excel 8.0;HDR=no;"";" 'exerce la requete ADO sur la donnée à recopier texte_SQL = "SELECT * FROM [" & plage & "] " Set requete = CreateObject("ADODB.Recordset") Set requete = source.Execute(texte_SQL) 'recopie les données du fichier Cells(2, 1).CopyFromRecordset requete 'f'erme la connexion ADO Set requete = Nothing Set source = Nothing
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 312
15 juin 2009 à 17:12
15 juin 2009 à 17:12
Bonjour,
OK, mais quelle est cette requ^te SQL, à quelle base de données te connectes tu etc. etc. etc.
merci d'être plus précis...
OK, mais quelle est cette requ^te SQL, à quelle base de données te connectes tu etc. etc. etc.
merci d'être plus précis...
eXqO
Messages postés
49
Date d'inscription
vendredi 25 avril 2008
Statut
Membre
Dernière intervention
26 septembre 2009
2
15 juin 2009 à 17:22
15 juin 2009 à 17:22
Voilà la requête SQL que j'ai :
select m.mp_l, count(*), sum(c.cde_tot_ttc)
from e_cde c, e_mode_paiement m
where c.cde_ty_se_c = 'WV2'
and c.cde_mp_c in ('KM','KI','KW','KT', 'KA','KC', 'CA')
and c.cde_mp_c = m.mp_c
--and c.cde_d between to_date('&date', 'dd/mm/yyyy hh24:mi:ss') -6
--and to_date('&date', 'dd/mm/yyyy hh24:mi:ss')
and c.cde_d between to_date('01/06/2009 00:00:01', 'dd/mm/yyyy hh24:mi:ss')
and to_date('07/06/2009 23:59:59', 'dd/mm/yyyy hh24:mi:ss')
group by m.mp_l
order by 1
Je me connecte à PL/SQL Developer. La date sera a automatiser aussi.
Mais mon problème principal reste d'interroger cette requête via Excel.
Cordialement,
Clément.
select m.mp_l, count(*), sum(c.cde_tot_ttc)
from e_cde c, e_mode_paiement m
where c.cde_ty_se_c = 'WV2'
and c.cde_mp_c in ('KM','KI','KW','KT', 'KA','KC', 'CA')
and c.cde_mp_c = m.mp_c
--and c.cde_d between to_date('&date', 'dd/mm/yyyy hh24:mi:ss') -6
--and to_date('&date', 'dd/mm/yyyy hh24:mi:ss')
and c.cde_d between to_date('01/06/2009 00:00:01', 'dd/mm/yyyy hh24:mi:ss')
and to_date('07/06/2009 23:59:59', 'dd/mm/yyyy hh24:mi:ss')
group by m.mp_l
order by 1
Je me connecte à PL/SQL Developer. La date sera a automatiser aussi.
Mais mon problème principal reste d'interroger cette requête via Excel.
Cordialement,
Clément.
eXqO
Messages postés
49
Date d'inscription
vendredi 25 avril 2008
Statut
Membre
Dernière intervention
26 septembre 2009
2
16 juin 2009 à 11:57
16 juin 2009 à 11:57
Merci beaucoup, ça me permet d'y voir un peu plus clair !