PowerQuerry - Compiler de nombreux fichier dépassant la limite de lignes

Bonjour Chris,

Je te joins les fichiers sources de quelques sondes (20 fichiers par sondes histoire de limiter la taille du dossier, mais certaines sonde comportent des milliers de fichier et des millions de lignes une fois compilées).

3exemple-pq.zip (601.59 Ko)

Sais tu répondre à à ma question 2 ?

C'est à dire de faire en sorte que ma source soit composée à partir des tables contenues dans les requêtes déjà créés (QGB610MT, QGB627MT-A,...).

Merci encore

image

Bonjour

Une proposition travaillant directement sur les csv et récupérant le nom de la sonde dans le nom du CSV

Si la structure de tous les CSV est la même tu peux tenter de tout traiter

Sinon voir la différence de structure : il faudra un traitement par type puis une synthèse

Adapter le chemin dans l'onglet Feuil1 avant d'actualiser

Chris, merci, c'est exactement ce que je cherchais à faire.
Il ne me reste plus qu'à trouver comment arrondir les valeurs moyennées de température à 0,5°C et c'est bon.

Concernant la méthode j'ai regardé comment tu t'y es pris et je n'arrive pas à comprendre quelques étapes :

1/ Je n'arrive pas à détecter a quel moment tu moyenne les valeurs par tranche de 15 minutes. J'ai l'impression que tu arrives à le faire quand tu importes les fichiers source.

2/ A quel moment as tu retiré les lignes qui polluent les fichiers source?
Je pense aux lignes qui comportent autre chose que des valeurs de température :
"Pt Created" ou encore "Nombre de valeurs :"...

De mon conté, je n'étais pas arrivé bien loin.
Le plus difficile est que je ne maitrise pas les différentes fonction de PQ.
Je regarde des sites qui les liste et en donne des exemples, mais c'est très laborieux.
Voila pour info mon "mauvais" code réalisé entre vendredi et ce matin :

let
    Source = Folder.Files("C:\Users\leisabel\Desktop\Exemple PQ"),
    #"Fichiers masqués filtrés1" = Table.SelectRows(Source, each [Attributes]?[Hidden]? <> true),
    #"Appeler une fonction personnalisée1" = Table.AddColumn(#"Fichiers masqués filtrés1", "Transformer le fichier", each #"Transformer le fichier"([Content])),
    #"Colonnes renommées1" = Table.RenameColumns(#"Appeler une fonction personnalisée1", {"Name", "Sonde"}),
    #"Autres colonnes supprimées1" = Table.SelectColumns(#"Colonnes renommées1", {"Sonde", "Transformer le fichier"}),
    #"Colonnes renommées2" = Table.RenameColumns(#"Autres colonnes supprimées1", {"Transformer le fichier", "Content"}),
    #"Colonnes renommées3" = Table.ExpandTableColumn(#"Colonnes renommées2", "Content", Table.ColumnNames(#"Transformer le fichier"(#"Exemple de fichier"))),
    #"Epuration" = Table.RemoveMatchingRows(#"Colonnes renommées3",{[Column2 = "Pt Created"]},"Column2"),
    #"Epuration2" = Table.RemoveMatchingRows(#"Epuration",{[Column1 = "Nombre de valeurs :"]},"Column1"),
    #"Colonnes supprimées" = Table.RemoveColumns(Epuration2,{"Column3"}),
    #"Colonnes renommées" = Table.RenameColumns(#"Colonnes supprimées",{{"Column2", "Valeur"}, {"Column1", "Date Base"}}),
    #"Colonnes permutées" = Table.ReorderColumns(#"Colonnes renommées",{"Date Base", "Sonde", "Valeur"})
    //#"Epuration3" = Table.RemoveMatchingRows(#"Colonnes permutées",{[Table.SelectRows(#"Colonnes permutées", each ([Valeur] = ""))]},"Date Base")
    //#"ExpandDateHeure" = Table.ExpandRecordColumn(#"Colonnes permutées", "Records", {"Date", "Heure"}, {"Date", "Heure"})
in
    #"Colonnes permutées"

C'est très peu optimisé par rapport à ce que vous me proposez à chaque fois.

Un énorme merci à vous deux, sincèrement.
Je n'y serai pas arrivé seul c'est une certitude quand je vois ce qu'il fallait faire.

RE

1/ Je n'arrive pas à détecter a quel moment tu moyenne les valeurs par tranche de 15 minutes. J'ai l'impression que tu arrives à le faire quand tu importes les fichiers source.

C'est dans la requête modèle Transformer l'exemple de fichier à l'étape Personnalisée ajoutée1

2/ A quel moment as tu retiré les lignes qui polluent les fichiers source?
Je pense aux lignes qui comportent autre chose que des valeurs de température :
"Pt Created" ou encore "Nombre de valeurs :"...

Dans la même requête, ce sont les 3 étapes suivant Source

Pour arrondir au 0,5, je ne pense pas que cela puisse être fait au moment du pivotage (Baroute78 confirmeras ou infirmeras)

Ce qui implique une étape de plus pour faire la moyenne avant le pivotage

Merci à vous deux.

Mon PC tourne depuis 4h, il a bientôt terminer de traiter la totalité des sondes!

C'est tout de même un monde ce PQ.
Je vais m'y intéresser à l'avenir car c'est par ailleurs très puissant comme outil.

Merci encore pour votre énorme aide!

Teka_22

Rechercher des sujets similaires à "powerquerry compiler nombreux fichier depassant limite lignes"