Requêtes sur Excel

Résolu
barb38 -  
Patrice33740 Messages postés 8561 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



1 réponse

Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
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

1
barb38
 
Barb38 à Patrice 33740.
Je vous remercie pour votre réponse concernant les requêtes sous excel 2007.
Je vais enfin pouvoir utiliser efficacement votre solution.
encore merci
Barb38
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
De rien, au plaisir de te relire sur le Forum

Cordialement
Patrice
0