XL 2016 Actualisation d'une query via VBA

LoloT

XLDnaute Nouveau
Bonjour à vous,
Je galère depuis un moment sur les macros, généralement j'utilise l'enregistreur et je modifie de petites choses mais là, même l'enregistreur ne m'aide pas vraiment ^^
J'ai une base de données que je sors sur Excel avec PowerQuery, je la retravaille visuellement, je filtre etc. afin d'alléger mon fichier (beaucoup trop de datas sinon).

Mon problème est que mes collègues voudraient pouvoir appuyer sur un bouton pour actualiser les données. C'est bien me direz-vous, ça fait gagner du temps et c'est plutôt basique. Mais quand j'utilise l'enregistreur pour générer le code : onglet données, actualiser tout / puis convertir la colonne A sur laquelle je fais de la rechercheV dans une autre feuille.
Eh bien... il ne convertit pas, ce qui fait que les formules de rechercheV sont N/A.

Voici le code ressorti à l'enregistreur :
Sub Test()
Sheets("Extraction_Query").Select
ActiveWorkbook.RefreshAll
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("Sheet_Query[[#Headers],[Avis]]"), _
DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter _
:=False, Tab:=True, Semicolon:=False, Comma:=False, Space:=False, _
Other:=False, FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
End Sub

Si quelqu'un peut m'aider ce serait top :)

D'avance merci !!
 

Cousinhub

XLDnaute Barbatruc
Inactif
Bonsoir,LoloT, vgendron

Comment fais-tu l'import?
Je ne vois pas pourquoi il te faudrait convertir par la suite???
Quel type de document? (csv?)
Pour mettre à jour un Tableau issu de PQ, il faut avoir son nom, puis :
VB:
Range("Ton_Tableau").ListObject.QueryTable.Refresh False 'pour ne pas mettre à jour en arrière plan
Mais si c'est bien un csv, ce serait bien que tu joignes un fichier csv anonymisé, mais avec la même structure (tu le modifies dans le bloc-notes), et tu le joins ici en le zippant (pour qu'il puisse passer la douane)
Bon courage
 

LoloT

XLDnaute Nouveau
Bonjour à vous et merci pour vos réponses,
Désolé pour le laps de temps, j'ai été pas mal en prise.

Vgendron, j'ai essayé ta formule mais ça n'a pas l'air de fonctionner, l'actualisation fonctionne avec ActiveWorkbook.RefreshAll car j'ai des tcd et graphiques qui reprennent les données, je mets donc tout à jour avec cette commande

Cousinhub, je n'importe pas vraiment les données, elles sont sur le réseau (Excel avec le suivi de plusieurs projets) et j'actualise juste mon tableau (qui me sert à suivre certains projets dans la multitude existante)
Les deux fichiers sont sous format Excel
Mon problème de "conversion" réside dans le fait qu'à l'actualisation un format se met sur ma colonne A de mon Extraction (que je récupère dans une autre sheet, nommons la RCHCH pour faire des recherches V dessus et réaliser des calculs et autres analyses) sauf que ce format n'est pas reconnu par mes formules, j'obtiens donc des N/A. J'avais trouvé la parade dans le menu : Données > Convertir et l'ensemble de la colonne A Extraction se mettait sous un format standard reconnu par mes formules dans RCHCH.
Maintenant, je rencontre quelques problèmes pour actualiser mes données et convertir cette colonne avec un bouton et une macro... L'actualisation fonctionne bien, mais le fait de convertir ne semble pas se faire...

Job75, ma requête ne me renvoie pas une seule colonne, j'en ai ~80 qui sont filtrés dans PQ et je n'en rappelle qu'une quarantaine :) Par contre je n'utilise que la A dans Extraction pour faire le lien dans RCHCH.
Tu peux m'expliquer le sujet du "séparateur est la tabulation" stp ? J'ai peut-être raté qqch à la création de la requête.

Je vous remercie encore !
 

Discussions similaires

Réponses
13
Affichages
2 K

Statistiques des forums

Discussions
314 422
Messages
2 109 447
Membres
110 482
dernier inscrit
ilyxxxh