Partager via


Enregistrer les modifications quotidiennes dans Excel et les signaler avec un flux Power Automate

Power Automate et les scripts Office se combinent pour gérer des tâches répétitives pour vous. Dans cet exemple, vous êtes chargé d’enregistrer chaque jour une seule lecture numérique dans un classeur et de signaler le changement depuis hier. Vous allez créer un flux pour obtenir cette lecture, le journaliser dans le classeur et signaler la modification par e-mail.

Configuration : Exemple de fichier Excel

Ce classeur contient les données, les objets et la mise en forme attendus par le script.

Exemple de code : Enregistrer et signaler des lectures quotidiennes

Ajoutez le script suivant à l’exemple de classeur. Dans Excel, utilisez Automatiser>le nouveau script pour coller le code et enregistrer le script. Enregistrez-le en tant que Valeur quotidienne d’enregistrement et essayez l’exemple vous-même !

function main(workbook: ExcelScript.Workbook, newData: string): string {
  // Get the table by its name.
  const table = workbook.getTable("ReadingTable");

  // Read the current last entry in the Reading column.
  const readingColumn = table.getColumnByName("Reading");
  const readingColumnValues = readingColumn.getRange().getValues();
  const previousValue = readingColumnValues[readingColumnValues.length - 1][0] as number;

  // Add a row with the date, new value, and a formula calculating the difference.
  const currentDate = new Date(Date.now()).toLocaleDateString();
  const newRow = [currentDate, newData, "=[@Reading]-OFFSET([@Reading],-1,0)"];
  table.addRow(-1, newRow);

  // Return the difference between the newData and the previous entry.
  const difference = Number.parseFloat(newData) - previousValue;
  console.log(difference);
  return difference.toString();
}

Exemple de flux : signaler les modifications quotidiennes

Suivez ces étapes pour générer un flux Power Automate pour l’exemple.

  1. Créez un flux cloud planifié.

  2. Planifiez la répétition du flux tous les 1 jour.

    L’étape de création de flux indiquant qu’elle se répète tous les jours.

  3. Sélectionnez Créer.

  4. Dans un flux réel, vous allez ajouter une étape qui obtient vos données. Les données peuvent provenir d’un autre classeur, d’un carte adaptatif Teams ou de toute autre source. Pour tester l’exemple, créez un numéro de test. Ajoutez une action et choisissez l’action Initialiser la variable . Attribuez-lui les valeurs suivantes.

    1. Nom : Entrée
    2. Type : Entier
    3. Valeur : 190000

    Action Initialiser la variable avec les valeurs données.

  5. Ajoutez une action et choisissez l’action Exécuter le script du connecteur Excel Online (Business). Utilisez les valeurs suivantes pour l’action.

    1. Emplacement : OneDrive Entreprise
    2. Bibliothèque de documents : OneDrive
    3. Fichier : daily-readings.xlsx (choisi par le biais de l’explorateur de fichiers)
    4. Script : Valeur quotidienne d’enregistrement
    5. newData : Entrée (contenu dynamique)

    Action Exécuter le script avec les valeurs spécifiées.

  6. Le script retourne la différence de lecture quotidienne sous forme de contenu dynamique nommé « result ». Pour l’exemple, vous pouvez vous envoyer les informations par e-mail. Ajoutez une action et choisissez l’action Envoyer un e-mail (V2) du connecteur Outlook (ou le client de messagerie de votre choix). Utilisez les valeurs suivantes pour terminer l’action.

    1. À : votre adresse e-mail
    2. Objet : Modification de lecture quotidienne
    3. Corps : « Différence par rapport à hier : » résultat (contenu dynamique d’Excel)

    Connecteur Outlook terminé dans Power Automate.

  7. Enregistrez le flux et essayez-le. Utilisez le bouton Tester dans la page de l’éditeur de flux. Veillez à autoriser l’accès lorsque vous y êtes invité.