Microsoft 365 FICHIER DE SYNTHESE data provenant de divers fichier

MLIZIN

XLDnaute Junior
Bonjour à tous,

voici mon soucis, j'ai des fichiers .csv provenant d'une extraction de fichier dans AUTOCAD reprenant les heures de dessin et de design par plan.
Vous trouverez ci-joint les fichiers DATA 1, DATA 2 et DATA 3 qui sont le nom du plan AUTOCAD et le nom du fichier .csv. Les fichiers DATA sont toujours identiques sauf les cellules C3, D3, E3 et F3 qui sont en fait des sommes des heures prestées. ( juste pour info dans les fichiers ). Pour le problème des fichiers joints à la présente discussion j'ai sauvé les fichiers .csv en .xlsx.
Nous désirons créer un fichier de synthèse reprenant uniquement les cellules C3, D3, E3 et F3 de chaque plan et donc de chaque fichier. Le nombre de fichier est aléatoire en fonction du projet.
Le fichier synthèse est également joint, hélas cela ne marche pas avec Vlookup car le nom du fichier est différent a chaque ligne Cln C. Il faudrait rendre variable le fichier source dans la formule et là je sèche.

Merci d'avance pour vos réponses
 

Pièces jointes

  • Synthesis DATA.xlsx
    13.1 KB · Affichages: 8
  • DATA 1.xlsx
    10.7 KB · Affichages: 4
  • DATA 2.xlsx
    10.7 KB · Affichages: 2
  • DATA 3.xlsx
    10.7 KB · Affichages: 2
Solution
RE

Pour la partie facultative, tu modifies juste les requêtes déjà faites : une ligne à changer dans 2 requêtes.

Aujourd'hui ou demain ou le 11 mai (lol)...

Quand on modifie une requête il peut effectivement afficher le pictogramme parce qu'il ne peut la "calculer" à cet instant T...

Bon c'est un peu le saut dans le grand bain mais une fois qu'on décortique, je pense qu'on voit la logique pas si compliquée finalement.

Merci du retour

MLIZIN

XLDnaute Junior
Bonjour Chris
Merci pour tes réponses et je l'espère tes suivantes.
En ce qui concerne PowerQuery, perso je ne l'utilise pas mais je pense qu'il sera difficile de le demander aux dessinateurs, mais cela reste surement une piste à envisagée.
Les fichiers DATA1 2 et 3 ont juste été sauvé en xlsx, à partir des fichiers csv.
J'ai essayé de poster des csv mais le site n'accepte pas ce format
 

chris

XLDnaute Barbatruc
RE
  • Données, Obtenir des données, A partir d'un fichier, A partir d'un dossier : indiquer le chemin.
    Une fenêtre s'ouvre affichant la liste des fichier csv.
    Utiliser Combiner et transformer les données ce qui ouvre une nouvelle fenêtre
  • Valider, ce qui ouvre PowerQuery
  • Fichier, Options et paramètres, Options de requête, dans la liste Classeur Actif, Paramètres régionaux : Anglais Etats unis (à cause du séparateur décimal)
  • A gauche on a plein de choses : des dossiers, des fonctions et des requêtes
    Sélectionner Transformer l'exemple de fichier
  • Filter, comme dans Excel la colonne 1 pour retenir seulement les lignes vides et la colonne 3 pour éliminer les lignes vides
  • Sélectionner les colonnes 3 à 6, clic droit, Supprimer les autres colonnes
  • Transformer, Utiliser la 1ère ligne pour les en-têtes
  • Sélectionner la colonne Num Drawings : Accueil, Type de données, Texte
  • sélectionner les 3 autres colonnes : Accueil, Type de données, Nombre décimal
  • A gauche sélectionner la dernière ligne qui porte le nom du répertoire et à droite supprimer la dernière action de cette requête Type modifié
  • Supprimer la colonne Source.Name
  • Trier la colonne Num Drawings
  • Facultatif :
    • si on veut que le dossier soit paramétrable comme dans mon exemple, il faut avoir nommé la cellule qui contient le chemin (je l'avais nommée Chemin)
    • se placer dans la requête Exemple de fichier, cliquer sur l'étape Source à droite et dans la barre de formule replacer ce qui est entre parenthèses par
      Excel.CurrentWorkbook(){[Name="Chemin"]}[Content][Column1]{0}
    • faire de même pour la dernière requête
  • Sortir par Accueil, Fermer et charger dans, Table et préciser l'emplacement
 

MLIZIN

XLDnaute Junior
Chris,

  • Données, Obtenir des données, A partir d'un fichier, A partir d'un dossier : indiquer le chemin.
    Une fenêtre s'ouvre affichant la liste des fichier csv. OK
    Utiliser Combiner et transformer les données ce qui ouvre une nouvelle fenêtre
  • Valider, ce qui ouvre PowerQuery OK j'ai les données des 3 fichiers
  • Fichier, Options et paramètres, Options de requête, dans la liste Classeur Actif, Paramètres régionaux : Anglais Etats unis (à cause du séparateur décimal) OK
  • A gauche on a plein de choses : des dossiers, des fonctions et des requêtes
    Sélectionner Transformer l'exemple de fichier Si je fais cela je n'ai plus que les données du fichier DATA1 Par contre à l'étape précédente j'avais les info des 3 fichiers ?
  • Filter, comme dans Excel la colonne 1 pour retenir seulement les lignes vides et la colonne 3 pour éliminer les lignes vides OK
  • Sélectionner les colonnes 3 à 6, clic droit, Supprimer les autres colonnes OK je n'ai plus la colonne Source.Name Je ne devrais pas sélectionner les colonnes "Source Name", Cln 3, 4. 5 et 6?
  • Transformer, Utiliser la 1ère ligne pour les en-têtes OK
  • Sélectionner la colonne Num Drawings : Accueil, Type de données, Texte OK
  • sélectionner les 3 autres colonnes : Accueil, Type de données, Nombre décimal OK
  • A gauche sélectionner la dernière ligne qui porte le nom du répertoire ??? et à droite supprimer la dernière action de cette requête Type modifié Soit dans Paramètres d'une requête ?
  • Supprimer la colonne Source.Name ???
  • Trier la colonne Num Drawings OK
  • Facultatif :
    • si on veut que le dossier soit paramétrable comme dans mon exemple, il faut avoir nommé la cellule qui contient le chemin (je l'avais nommée Chemin) Dans l'excel OK
    • se placer dans la requête Exemple de fichier, A gauche ? sur l'étape Source cliquer double cliquez? à droite OK j'ai Chemin du dossier qui apparait et dans la barre de formule ??? replacer ce qui est entre parenthèses ??? par
      Excel.CurrentWorkbook(){[Name="Chemin"]}[Content][Column1]{0}
    • faire de même pour la dernière requête Bloquant à l'étape précédante je n'y suis pas encore

  • Sortir par Accueil, Fermer et charger dans, Table et préciser l'emplacement OK
Si je saute l'étape "Transformer l'exemple de fichier"
Filtrer OK
A gauche sélectionner la dernière ligne ????
J'arrive au même résultat que toi dans le fichier Excel, mais la partie facultative je n'y arrive pas, désolé.
Merci en tout cas pour les explications, nous y arriverons.
Marc
 

chris

XLDnaute Barbatruc
RE

C'est la la requête Transformer l'exemple de fichier qui sert de modèle à PowerQuery pour transformer tous les fichiers d'un dossier : il est donc très important que cette modélisation soit nickel
POwerQuery propose toujours le 1er fichier de l'ensemble ce qui dans la majorité des cas convient.

PowerQuery en fait automatiquement une fonction de transformation

Une que fois que ce modèle est fait, dans la liste des dossiers requêtes, fonctions dans le volet de gauche, tous en bas on a la requête qui correspond au dossier et à l'assemblage : elle porte en général le nom du sous-dossiers sélectionné au tout début de processus.

Si la modélisation est correcte on va avoir une synthèse réussie mais quelques petites corrections sur cet assemblage peuvent être nécessaires comme ici le typage inutile

Vu tes fichiers csv tu ne peux pas avoir de résultat sans passer par la modélisation (Transformer l'exemple de fichier) donc j'ai du mal à comprendre quand tu dis t'en passer.

Pour rappel 3 volets dans PQ :
  • à gauche on a la liste des requêtes et autres objets,
  • au centre le détail de l'objet sélectionner (requête en général,
  • à droite la liste des étapes de construction de la requête sélectionnée
Quand je dis à gauche ou à droite je me réfère au volet de gauche ou celui de droite

Si tu ne vois pas la barre de formule, il faut l'afficher (onglet Affichage)

Je pense avoir bien décrit les étapes : dans un premier temps suis les sans trop te poser de questions.

Une fois que le résultat est bon tu pourras t'attacher à reprendre étape par étape et comprendre ce que fait l'étape et sa logique.

Donc reprend à 0 et reposte si ça coince ou pour des précisions ;)
 

MLIZIN

XLDnaute Junior
Bonsoir Chris,
  • Mes 3 fichiers DATA sont dans un dossier
  • Je suis dans le fichier Excel cible
  • Données/ Obtenir des données /A partir d'un fichier / A partir d'un dossier
  • Je donne le chemin pour atteindre le dossier ( C:\Users\mliph\Documents\fichier csvFichier csv )
  • Il affiche les trois fichiers DATA, Combiner et transformer les données
  • J'ai un popup Combiner les fichiers Exemple de fichier Menu déroulant : Premier fichier OK
  • Editeur Power Query s'ouvre
  • J'ai les données des trois fichiers DATA qui apparaissent ( Source.Name, Column 1 à 7 )
  • A gauche sous Autres requêtes (1) :Fichier csv il apparait un pictogramme d'une table je clique sur Transformer l'exemple de fichier
  • Je n'ai plus que le fichier DATA 1 qui apparait
  • Filter Cln 1 et 3, je n'ai plus que 2 lignes et les colonnes de 1 à 7, les deux premières Cln sont vide. Les totaux sont affichés avec une décimale.
  • Sélectionner Cln 3, 4, 5 et 6 et Supprimer les Cln / Supprimer les autres Cln Je n'ai plus que la Cln 3, 4, 5 et 6. Les nombres sont toujours affichés en décimale. J'ai le pictogramme Attention qui s'affiche à côté de Fichier csv à gauche
  • Transformer / Utiliser la 1ère ligne pour les en-têtes La première Cln = Num Drawings, la deuxième colonne Total survey ensuite total Design et enfin Total
  • Je sélectionne la Cln Total Survey, Total Design et Total Type de données / Nombre décimal un Popup apparait : Modifier le type de colonne Remplacer l'actuelle / Ajouter une nouvelle étape / Annuler J'ai cliquer sur Remplacer l'actuelle
  • A gauche sélectionne Autres requêtes (1) :Fichier csv il apparait Expression.Error : Désolé... Nous n'avons pas trouvé la colonne " Column 1 de la table.
  • Je supprime à droite Type modifié
  • Les 3 fichiers DATA apparaissent
  • Je supprime la Cln Source.Name
  • Sortir par Accueil, Fermer et charger dans, Table et préciser l'emplacement J'ai le bon résultat SUPER.
Maintenant si mon dessinateur ajoute 3 autres dessins avec des heures, dans le même dossier, je dois tout recommencer ??

Pour la partie facultative je dois aussi refaire l'ensemble des tâches ou bien il est possible de revenir en arrière dans le processus ??
 

chris

XLDnaute Barbatruc
RE

Pour la partie facultative, tu modifies juste les requêtes déjà faites : une ligne à changer dans 2 requêtes.

Aujourd'hui ou demain ou le 11 mai (lol)...

Quand on modifie une requête il peut effectivement afficher le pictogramme parce qu'il ne peut la "calculer" à cet instant T...

Bon c'est un peu le saut dans le grand bain mais une fois qu'on décortique, je pense qu'on voit la logique pas si compliquée finalement.

Merci du retour
 

Discussions similaires

Statistiques des forums

Discussions
312 294
Messages
2 086 895
Membres
103 404
dernier inscrit
sultan87