Requêtes sur Excel
Résolu
barb38
-
Patrice33740 Messages postés 8400 Date d'inscription Statut Membre Dernière intervention -
Patrice33740 Messages postés 8400 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je sèche pour récupérer afin de les modifier des requêtes créees avec Excel 2007: création de celles-ci: données-> à partie d'autres source-> provenance MsQuery(la table source est un tableau Excel), mais lorsque je veux les récupérer avec VBA afin de modifier leur connexion: aucune requête n'est trouvé
'voici ce que j'ai trouvé sur un forum et adapté pour mon utilisation
Dim Feuil As Worksheet, Req As QueryTable
Dim I as integer
Dim Nom () as String 'pour trouver le nom
Dim Ancienne_Connexion as String
Dim Nouvelle_Connexion as String
'ici je définis nouvelle connexion
'
'
I=0
For Each Feuil In Worksheets
For Each Req In Sh.QueryTables
I=I+1
Redim Preserve Nom(I)
Nom(I)=Req.Name
Ancienne_Connexion=Req.Connection
Req.Connection = Replace(Req.Connection, _
Ancienne_Connexion, Nouvelle_Connexion)
Req.Refresh False
End If
Next
Next
ThisWorkbook.Save
Set Feuil= Nothing: Set Req = Nothing
Aucune requête créée n'est trouvée, pouvez-vous m'aider
Je vous remercie
barb38
je sèche pour récupérer afin de les modifier des requêtes créees avec Excel 2007: création de celles-ci: données-> à partie d'autres source-> provenance MsQuery(la table source est un tableau Excel), mais lorsque je veux les récupérer avec VBA afin de modifier leur connexion: aucune requête n'est trouvé
'voici ce que j'ai trouvé sur un forum et adapté pour mon utilisation
Dim Feuil As Worksheet, Req As QueryTable
Dim I as integer
Dim Nom () as String 'pour trouver le nom
Dim Ancienne_Connexion as String
Dim Nouvelle_Connexion as String
'ici je définis nouvelle connexion
'
'
I=0
For Each Feuil In Worksheets
For Each Req In Sh.QueryTables
I=I+1
Redim Preserve Nom(I)
Nom(I)=Req.Name
Ancienne_Connexion=Req.Connection
Req.Connection = Replace(Req.Connection, _
Ancienne_Connexion, Nouvelle_Connexion)
Req.Refresh False
End If
Next
Next
ThisWorkbook.Save
Set Feuil= Nothing: Set Req = Nothing
Aucune requête créée n'est trouvée, pouvez-vous m'aider
Je vous remercie
barb38
1 réponse
-
Bonjour,
Pour explorer les requêtes avec Excel 2003 :Sub Requetes_avec_Excel2003() Dim Feuil As Worksheet Dim Req As QueryTable For Each Feuil In Worksheets For Each Req In Feuil.QueryTables '.... Next Next End Sub
Pour explorer les requêtes avec Excel 2007 :Sub Requetes_avec_Excel2007() Dim Feuil As Worksheet Dim Lst As ListObject Dim Req As QueryTable For Each Feuil In Worksheets For Each Lst In Feuil.ListObjects Set Req = Lst.QueryTable '.... Next Next End Sub