Récupérer les données depuis un fichier Excel déposé sur Sharepoint (+condition)

  • Récupérer les données depuis un fichier Excel déposé sur Sharepoint (+condition)

    Posté par Tram Anh sur 25 avril 2025 at 10h26

    Bonjour à tous,

    J’aimerai mettre en place un système automatisé permettant de récupérer quotidiennement les données pertinentes depuis un fichier Excel nommé “suivi des isolés” déposé sur Sharepoint.

    En particulier, l’objectif est de détecter les lignes dont la colonne “Reception Date” correspond au jour actuel (meme jour, mois et année) afin de copier automatique dans un second fichier Excel nommé “contrat”, également hébergé sur Sharepoint. Les deux fichiers Excel “suivi des isolés” et “contrat” ont donc des colonnes identiques.

    J’ai réalisé un flux pour celle ci, elle détecte bien toutes les lignes du fichier “suivi des isolés” déposé mais l’importation vers le fichier “contrat” détecte qu’il n’y a pas de date de réception qui correspond à la date d’aujourd’hui alors qu’il y en a, donc le contrat est tout vide. Je vous mets ci-joint un copie écran du flux ainsi que la condition du date de réception et les deux fichiers Excel. La colonne “Reception Date” des deux fichiers sont aussi sous format date courte européée (jour/mois/année).

    Je vous remercie d’avance 🙂

    Julien a répondu 4 weeks, 1 day ago 3 Membres · 2 Réponses
  • 2 Réponses
  • R3dKap

    Member
    25 avril 2025 at 11h24

    Salut Tram Anh,

    C’est probablement dû à ton test sur la date car soit les formats ne correspondent pas, soit (puisqu’il n’y a pas d’heures associée aux dates) le décalage horaire entre la date dans le fichier Excel et celui du utcNow() fait que elles ne sont pas sur le même jour. Il faut commencer par regarder ce que te renvoies précisément (sous quel format) l’action Lister les lignes présentes dans un tableau au niveau de la colonne Reception date.

    Mais franchement, j’hallucine de voir la quantité de gens qui essaie de manipuler des données dans des fichiers Excel avec Power Automate ou Power Apps. C’est faisable mais c’est vraiment galère. Je sais que ça tient du fait que les entreprises migrent petit à petit des fichiers Excel vers la Power Platform mais je crois fermement que c’est justement l’occasion d’inviter les utilisateurs de ces fichiers Excel à basculer définitivement sur SharePoint.

    Une liste dans SharePoint c’est comme un tableau dans Excel. Sauf que c’est vachement plus simple à manipuler derrière avec du Power Automate ou du Power Apps.

    Dans ton cas de figure, on pourrait très bien imaginer une liste SharePoint qui reproduirait exactement ce qu’il y a dans ton fichier de suivi des isolés, et ensuite un petit flux très simple qui filtre les lignes de cette liste où la date de réception correspondrait à la date du jour pour la recopier dans une autre liste appelée Contrats. Beaucoup plus simple que de bosser sur des fichiers Excel. Les fichiers Exel c’est bien EN DEHORS de la Power Platform en fait, si je devais résumer… 😆

    Mais ce n’est que mon humble avis…

  • Julien

    Member
    4 mai 2025 at 10h15

    Salut Tram Anh,

    1) Pour poursuivre la réponse de R3dKap

    Si tu lances un test du flux et que tu regardes la sortie l’action Lister les lignes présentes dans un tableau, en cherchant le champ Reception Date tu verras probablement quelque chose comme ça :

    L’action ne renvoie donc pas la date au format “dd/MM/yyyy” que tu peux voir dans Excel, mais bien sa valeur telle que vraiment stockée. A ma connaissance, tu ne peux rien faire de cette valeur dans Power Automate (sans passer par de la magie). Cependant, dans l’action Lister les lignes présentes dans un tableau, il y a une option pour récupérer la date sous une autre forme qui sera exploitable :

    Dans les paramètres de l’action, au niveau des Paramètres avancés, cliquer sur “Afficher tout”, puis tout en bas : DateTime format. Selectionner “ISO 8601”. (/!\ faire de même avec l’action Ajouter une ligne à un tableau)

    Maintenant, l’execution donne :

    Ce format est utilisable avec la fonction formatDateTime() : tu peux y appliquer le même format que utcnow() pour maintenant comparer des dates dans des formats cohérents.

    2) Remarque sur la conception du flux :

    Après la modif précédente, le flux devrait fonctionner, mais il est peu élégant, peu efficace (et gaspille des actions).
    Voici une reformulation, je te laisse te renseigner sur l’action Filtrer un tableau et voir pourquoi il y a un gain. Si ce n’est pas clair reviens vers nous 😉
    (Il y aurait possibilité d’aller plus loin avec des techniques de vieux gourous que je ne maitrise pas mais c’est déjà très bien).

    Bon courage 😉

Connectez-vous pour répondre.