Requete SQL dans un classeur fermé
Résolu
winflow
Messages postés
157
Date d'inscription
Statut
Membre
Dernière intervention
-
winflow Messages postés 157 Date d'inscription Statut Membre Dernière intervention -
winflow Messages postés 157 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Requete SQL dans un classeur fermé
- Rouvrir un onglet fermé - Guide
- Application se ferme toute seule android - Guide
- Coco.fr fermé - Accueil - Réseaux sociaux
- Pc portable fermé mais allumé - Guide
- Imprimer un classeur excel sur mac - Guide
6 réponses
si les données ne sont pas de m^me type on ne peut pas utiliser ADO ou difficilement...
La solution possible avec des macrosXL4 dites de Walkenbach à adapter à ton contexte et à compléter (cheminfeuille, nomfeuille...)
https://www.cjoint.com/?3KeocXOwfn4
La solution possible avec des macrosXL4 dites de Walkenbach à adapter à ton contexte et à compléter (cheminfeuille, nomfeuille...)
https://www.cjoint.com/?3KeocXOwfn4
Non sur
Set request = Source.Execute(xSQL)
Ok, c'est bien xSql qui est erroné :o)
Je te propose une solution en début d'après midi mais pour éviter des complications "usine à gaz" il faudrait que tu rebaptises ta feuille avec un underscore
"Informations_générales"
mais comme tu importes peu de données ( 5)il y a peut-^tr + simple sans ouvrir le fichier...
Je te propose une solution en début d'après midi mais pour éviter des complications "usine à gaz" il faudrait que tu rebaptises ta feuille avec un underscore
"Informations_générales"
mais comme tu importes peu de données ( 5)il y a peut-^tr + simple sans ouvrir le fichier...
Ci dessous proposition
(tu n'as plus besoin de cocher les références ni de refermer à la fin)
attention: les données doivent ^tre de m^me type dans A2:A7 ; nombre, date, texte....
je t'envoie une autre méthode par macroXL4 un peu plus tard
(tu n'as plus besoin de cocher les références ni de refermer à la fin)
Sub ouvrir()
Dim Source As Object
Dim CheminFichier As String
Dim NomFeuille As String, Plage As String, Texte_SQL As String
Dim Requete As Object
Set Source = CreateObject("ADODB.Connection")
Set Requete = CreateObject("ADODB.Recordset")
If Application.FileDialog(msoFileDialogFilePicker).Show = True Then
'Définit le classeur fermé servant de base de données
CheminFichier = Application.FileDialog(msoFileDialogFilePicker).SelectedItems(1)
MsgBox (CheminFichier)
Else
MsgBox ("Veuillez cliquer sur ouvrir svp")
Exit Sub
End If
'Nom de la feuille dans le classeur fermé
NomFeuille = "Informations_générales"
' Plage à importer
Plage = "A2:A7"
'--- Connexion ---
With Source
.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _
& CheminFichier & ";Extended Properties=""Excel 12.0;HDR=YES;"""
.Open
End With
'----- Requete -----
Texte_SQL = "SELECT * FROM [" & NomFeuille & "$" & Plage & "]"
Set Requete = Source.Execute(Texte_SQL)
'--- restitution sur feuille classeur cible
ActiveSheet.Range("B2").CopyFromRecordset Requete
End Sub
attention: les données doivent ^tre de m^me type dans A2:A7 ; nombre, date, texte....
je t'envoie une autre méthode par macroXL4 un peu plus tard
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Les données ne sont pas de même type dans ce cas comment faire ? Comment accéder aux données retournées ?