OVH Cloud OVH Cloud

Pb Requete par VBA ?

4 réponses
Avatar
Stéphane
Bonjour,
j'ai un petit soucis pour utiliser une requete par VBA.

Ma Requete fonctionne très bien, j'obtiens les valeurs dans la feuille
excel, Mais je ne sais pas comment avoir accés aux
" propriétés de la plage de données externes " pour décocher "Enregistrer la
définition de la requete" par VBA.

En fait, une fois les infos reçues, je veux juste enregistrer le résultat de
la requete, mais pas la définition de la requete.

j'espere etre clair.

Je suis preneur de tout conseil !
Merci

4 réponses

Avatar
isabelle
bonjour Stéphane,

With ActiveSheet.QueryTables.Add(Connection:=Array(Array("ODBC;DBQ=M:....
.Name = "zaza"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:úlse '<-------- il faut mettre cette ligne
End With

isabelle


Bonjour,
j'ai un petit soucis pour utiliser une requete par VBA.

Ma Requete fonctionne très bien, j'obtiens les valeurs dans la feuille
excel, Mais je ne sais pas comment avoir accés aux
" propriétés de la plage de données externes " pour décocher "Enregistrer la
définition de la requete" par VBA.

En fait, une fois les infos reçues, je veux juste enregistrer le résultat de
la requete, mais pas la définition de la requete.

j'espere etre clair.

Je suis preneur de tout conseil !
Merci


Avatar
Stéphane
Bonjour Isabelle,
merci pour ces infos, mais j'utilise exactement le même code, et il est
toujours possible d'actualiser les données !
" Manuellement " il est possible de changer les " propriétés de la plage de
données " mais en essayant de capturer par macro cette manip. la macro reste
vide.




"isabelle" a écrit dans le message de news:

bonjour Stéphane,

With ActiveSheet.QueryTables.Add(Connection:=Array(Array("ODBC;DBQ=M:....
.Name = "zaza"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:úlse '<-------- il faut mettre cette
ligne
End With

isabelle


Bonjour,
j'ai un petit soucis pour utiliser une requete par VBA.

Ma Requete fonctionne très bien, j'obtiens les valeurs dans la feuille
excel, Mais je ne sais pas comment avoir accés aux
" propriétés de la plage de données externes " pour décocher "Enregistrer
la
définition de la requete" par VBA.

En fait, une fois les infos reçues, je veux juste enregistrer le résultat
de
la requete, mais pas la définition de la requete.

j'espere etre clair.

Je suis preneur de tout conseil !
Merci




Avatar
isabelle
bonjour Stéphane,

est ce que comme ça, ça irait ?

With Worksheets(1).QueryTables(1)
.EnableRefresh = False
End With

isabelle


Bonjour Isabelle,
merci pour ces infos, mais j'utilise exactement le même code, et il est
toujours possible d'actualiser les données !
" Manuellement " il est possible de changer les " propriétés de la plage de
données " mais en essayant de capturer par macro cette manip. la macro reste
vide.

"isabelle" a écrit dans le message de news:

bonjour Stéphane,

With ActiveSheet.QueryTables.Add(Connection:=Array(Array("ODBC;DBQ=M:....
.Name = "zaza"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:úlse '<-------- il faut mettre cette
ligne
End With

isabelle


Bonjour,
j'ai un petit soucis pour utiliser une requete par VBA.

Ma Requete fonctionne très bien, j'obtiens les valeurs dans la feuille
excel, Mais je ne sais pas comment avoir accés aux
" propriétés de la plage de données externes " pour décocher "Enregistrer
la
définition de la requete" par VBA.

En fait, une fois les infos reçues, je veux juste enregistrer le résultat
de
la requete, mais pas la définition de la requete.

j'espere etre clair.

Je suis preneur de tout conseil !
Merci






Avatar
Stéphane
Merci Isabelle,
Je crois même que ça va simplifier mon code . (Actualisation auto à
l'ouverture du fichier, puis Devalider le Refresh).



"isabelle" a écrit dans le message de news:

bonjour Stéphane,

est ce que comme ça, ça irait ?

With Worksheets(1).QueryTables(1)
.EnableRefresh = False
End With

isabelle


Bonjour Isabelle,
merci pour ces infos, mais j'utilise exactement le même code, et il est
toujours possible d'actualiser les données !
" Manuellement " il est possible de changer les " propriétés de la plage
de
données " mais en essayant de capturer par macro cette manip. la macro
reste
vide.

"isabelle" a écrit dans le message de news:

bonjour Stéphane,

With
ActiveSheet.QueryTables.Add(Connection:=Array(Array("ODBC;DBQ=M:....
.Name = "zaza"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:úlse '<-------- il faut mettre cette
ligne
End With

isabelle


Bonjour,
j'ai un petit soucis pour utiliser une requete par VBA.

Ma Requete fonctionne très bien, j'obtiens les valeurs dans la
feuille
excel, Mais je ne sais pas comment avoir accés aux
" propriétés de la plage de données externes " pour décocher
"Enregistrer
la
définition de la requete" par VBA.

En fait, une fois les infos reçues, je veux juste enregistrer le
résultat
de
la requete, mais pas la définition de la requete.

j'espere etre clair.

Je suis preneur de tout conseil !
Merci