Le problème est un peu complexe à expliquer simplement.
Supposons par exemple que vous ayiez à extraire des données de votre ERP pour y ajouter des informations spécifiques pour un rapport. L'idéal pour vous serait d'ajouter ces informations dans Excel, en face de la ligne correspondante. Et le plus important, il faut que ces informations soient conservées à chaque rafraichissement de l'extraction de l'ERP.
C'est ce que permet cette procédure.
Cliquez sur le lien ci-dessous pour télécharger le fichier exemple.
Voici la vidéo. Le tutoriel pas à pas se trouve ici :
Source : https://exceleratorbi.com.au/self-referencing-tables-power-query/
C'est effectivement un cas de figure que l'on rencontre très régulièrement en entreprise, permettra de gagner du temps de ressaisie sur n'importe quel suivi dont une partie des données est sous ERP
Bonjour Gaetan : Merci pour ce post très intéressant . Le principe fonctionnent t'il également avec de formules ? Je suppose que oui !!!
Ne semble pas fonctionner avec une formule, je pense qu'il faut créer une colonne calculée dans powerquery
Oui, effectivement, on ne peut pas ajouter une formule dans la colonne commentaire. Elle sera remplacée par sa valeur (on peut remplacer le type de données par any pour conserver une valeur numérique). Personnellement, j'évite au maximum d'ajouter une formule valide sur une seule ligne, car en terme de structure de données, ca n'est généralement pas une bonne pratique, mais je suis conscient de certaines exceptions. Une des raisons est la tendance à recopier des formules sur toute la colonne, et donc de prendre le risque d'écraser des données manuelles. Donc, soit on a uniquement des données manuelles, soit on a uniquement une formules. SI on doit gérer les deux, en général, j'ajoute une colonne de saisie manuelle et une colonne de formule testant si la saisie manuelle a été faite ou pas.
Par contre, ajouter une nouvelle colonne avec une formule sur toute la colonne semble fonctionner correctement. Cette nouvelle colonne ne fait pas partie de la table chargée dans PowerQuery.
Bonjour à tous les deux, je viens de poster un complément de vidéo :
https://www.xlerateur.com/divers/2019/10/09/complement-ajouter-des-formules-a-une-requete-de-liaison-externe-9872/
très bonne découverte et explication
Bonjour,
Merci pour ce tuto.
Attention, il y a une grosse limite à cela :
Puisque l'on parle par exemple de données venant d'un ERP, une ligne peut très bien apparaître, puis disparaître pour réapparaître (par exemple suite à filtre). Dans ce cas le commentaire est perdu à tout jamais.
Dans l'exemple il suffit, dans le fichier csv, de supprimer la ligne ayant fait l'objet d'un commentaire, d'actualiser les données, puis de remettre cette ligne dans le csv et d'actualiser à nouveau, le commentaire est perdu; ce qui est tout d'une certaine manière logique mais peut finalement nous poser des soucis de suivi.
Laurent
Bonjour Laurent
Oui, entièrement d'accord. Je pense que je vais regrouper les limites de cette approche.
Comme vous l'avez mentionné, c'est effectivement une lmite logique, mais pas forcément évidente au départ.
Merci
Gaetan
Bonjour,
je souhaite appliquer cette méthode cependant lors de la fusion des requêtes, toutes mes lignes sont identiques. Je perds toutes mes données sauf une que j'ai en centaine de lignes.
De plus, je n'arrive pas à fixer les commentaires associés à la ligne. Je crois que mon programme est trop chargé et je ne sais pas où placer le code que vous proposez pour ne pas mettre en péril toutes mes données.
Merci d'avance
Katell
extra ! merci 🙂
Bonjour,
super explication !
je rencontre un problème car ma source de données ne donne pas de numéro a la suite mais un horodateur ( en effet je me sert d'un formulaire google pour que mes employé face leurs pointages )
j'aimerai pouvoir y ajouter un commentaire afin de savoir si la secrétaire a saisi les heur ou pas
Bonjour Yoann,
Peut être pouvez vous transformer dans PQ l'horodateur en numérique (non testé).
Génial ! Merci beaucoup ! Je me doutais que ça existait mais je n'aurais jamais réussi à le trouver seule sans votre post.
Cela promet du temps de travail optimisé et des opérationnels sasisfaits 🙂
Bonjour,
sauriez-vous me dire si la même chose est envisageable avec un tableau issue d'une requête via Microsoft Query qui va pointer sur une table SQL via ODBC?
Bonjour Stephane, je ne suis pas certain, il faudrait essayer. On peut regarder ensemble, vous pouvez me contacter par email.
Bonjour Gatean,
Comme toujours, merci encore pour fournir des solutions concrêtes !
Y a t il depuis, avec les évolutions Excel ces derniers temps, une procédure simplifiée ?
Bonjour, cela fait un moment que je n'ai pas regardé. Je n'ai rien vu passer sur ce sujet, mais ca serait intéressant de regarder à nouveau.
Extra
Merci
J'ai élargi le périmètre de Power BI
qui devient également un outil de "saisie"
Bonjour, je trouve votre vidéo simple et très bien expliquée !
Malheureusement un message d'erreur apparait lorsque j'enregistre le nouveau code modifié. Le message d'erreur est le suivant : "Expression.Error : Désolé... Nous n'avons pas trouvé la colonne « Nom » de la table." (à savoir que la colonne "Nom" est la première du tableau)
J'ai essayé plusieurs fois avec des tableaux et des informations différentes en reprenant pas à pas la vidéo mais il y a toujours ce message d'erreur. A savoir que je n'ai absolument pas touché aux informations de la requête, ni le contenu du tableau, ni l'en-tête (je n'ai pas modifié le nom de la colonne).
Savez-vous pourquoi ce message d'erreur apparaît et avez-vous une solutions ?
Merci d'avance pour votre aide
Bonjour, dans la colonne Nom, vous avez quels types de données (numérique, texte, etc).
Sinon, sans voir les données, je ne sais pas trop.
Bonjour, la colonne est en texte mais je viens de changer et c'est le même problème. Est-ce que je pourrais vous envoyer les documents ?
C'est bon, j'ai trouvé mon erreur. J'avais quand même loupé une étape. Lorsque j'ai modifié le nom de la deuxième source, je ne l'ai pas modifié sur la ligne du dessous.
Désolé pour le dérangement
En tout cas, la vidéo est très bien faite, bien expliqué. Bravo !
Bonjour Gaetan, merci beaucoup pour ces explications fournies, ça a solutionné mon problème de colonnes libres ajoutées à du retraitement Powerquery.
Bonjour Gaetan,
Tout d'abord bravo et merci pour ce tuto dont je me sers régulièrement 😉
Pour aller plus loin, est-ce qu'il est envisageable de conserver des lignes (et leur contenu) ajoutées au tableau après traitement Powerquery, et qui ne disparaitraient pas quand on relance la requête ?
Bonjour Gaetan,
Merci pour ton tuto qui m'a bien aidé !
par contre, je n'arrive pas à supprimer définitivement les colonnes dupliquées en toute fin de processus. en effet, j'ai mes colonnes ajoutées + des doublons disposés un peut n'importe comment sur lesquelles sont reportées mes données ajoutées lorsque j'actualise. j'ai passé en revue l'ensemble du processus pour voir si je pouvais agir dessus mais je ne trouve pas. à présent, quand je consulte les champs disponibles dans l'étape "Requêtes Fusionnées" : il y a l'ensemble des doubles. par contre rien dans l'éditeur PQ (tout semble comme attendu)
Sarah, je vous ai contacté par email.
Yohann, sans voir les données, ca va etre un peu difficile de répondre à la question. Par expérience, ca vaut le coup de refaire le processus de zéro. C'est compliqué et c'est facile de louper une étape. On peut regarder ensemble, je vous envoie un email.
Bonjour Gaetan,
En effet, c'est sûrement dû à un petit paramètre que j'aurai loupé dans le processus. je test à nouveau.
merci en tous cas !
Bonjour Gaetan,
j'ai tout repris à 0 et bien suivi chaque étape méticuleusement mais j'obtiens la même chose : Mes colonnes manuelles en doublon réapparaissent à chaque actualisation. D'ailleurs, les données fraichement inscrites se reportent sur la colonne doublon correspondante... peut-être une piste ?
Bonsoir et merci pour cette solution que je vais essayer de mettre en pratique. En effet, on me demande d'exporter des données via une base de données en SQL dont certaines colonnes seront renseignées manuellement lorsque POWER QUERY aura permis la transformation dans un fichier EXCEL. Bien entendu, mes collègues veulent garder leurs saisies lors de l"actualisation. Je me lance sans l"aventure dès demain. Merci encore.
Bonjour, comment cela fonctionne si l'on a besoin de 3 colonnes commentaires qui seront saisies manuellement et dont on souhaite conserver les données lors du rafraîchissement de la requête ?
Bonjour Kelly,
J'ai fait une mise à jour de cette technique que vous pouvez trouver ici et qui explique comment gérer plusieurs colonnes, y compris des colonnes de formule.
https://www.xlerateur.com/divers/2024/02/08/conserver-les-donnees-lors-dune-liaison-entre-des-donnees-externes-de-type-csv-et-powerquery-14117/
Cordialement