Partager via


Exécuter des scripts Office avec Power Automate

Power Automate vous permet d’ajouter des scripts Office à un workflow automatisé plus volumineux. Vous pouvez utiliser Power Automate pour effectuer des opérations telles que l’ajout du contenu d’un e-mail à la table d’une feuille de calcul ou la création d’actions dans vos outils de gestion de projet en fonction des commentaires du classeur.

Importante

Pour utiliser des scripts Office dans Power Automate, vous devez disposer d’une licence professionnelle Microsoft 365. Les licences Office 365 Entreprise E1 et Office 365 F3 peuvent utiliser des scripts avec Power Automate, mais n’ont pas d’intégrations Power Automate directement dans Excel.

Conseil

Vous souhaitez exécuter automatiquement un script sans vous connecter à d’autres applications ? Utilisez la fonctionnalité De planification de script .

Prise en main

Si vous débutez avec Power Automate, nous vous recommandons de consulter Prise en main de Power Automate. Vous pouvez en savoir plus sur toutes les possibilités d’automatisation qui s’y trouvent. Les documents ici se concentrent sur la façon dont les scripts Office fonctionnent avec Power Automate et comment cela peut vous aider à améliorer votre expérience Excel.

Tutoriels pas à pas

Il existe trois didacticiels pas à pas pour Power Automate et les scripts Office. Ceux-ci montrent comment combiner les services d’automatisation et passer des données entre un classeur et un flux.

Créer un flux à partir d’Excel

Vous pouvez commencer à utiliser Power Automate dans Excel avec divers modèles de flux. Sous l’onglet Automatiser , sélectionnez Automatiser une tâche.

Bouton « Automatiser une tâche » dans le ruban.

Cela ouvre un volet Office avec plusieurs options pour commencer à connecter vos scripts Office à des solutions automatisées plus volumineuses. Sélectionnez n’importe quelle option pour commencer. Votre flux est fourni avec le classeur actuel.

Volet Office affichant des options de modèle de flux telles que « Planifier l’exécution d’un script Office dans Excel, puis envoyer un e-mail » et « Exécuter un script Office dans Excel lorsqu’une réponse Microsoft Forms est reçue ».

Conseil

Vous pouvez également commencer à créer un flux à partir du menu Plus d’options (...) sur un script individuel.

Fonctions du connecteur de cluster Excel

Le connecteur Excel Online (Business) permet à vos flux d’accéder aux classeurs Excel. Deux actions appellent des scripts Office.

  • Exécutez le script. Il s’agit de l’action à utiliser avec les scripts stockés à l’emplacement par défaut de votre OneDrive.
  • Exécutez le script à partir de la bibliothèque SharePoint. Il s’agit de l’action à utiliser lorsque des scripts sont stockés dans le site SharePoint de votre équipe.

Pour l’action Exécuter le script , l’emplacement du script se trouve toujours dans votre OneDrive.

L’action Exécuter le script avec les champs terminés qui indiquent l’emplacement est « OneDrive Entreprise », la bibliothèque de documents est « OneDrive », le fichier est « daily-readings.xlsx » et le script est nommé « Format table ».

Sécurité des données dans les scripts Office avec Power Automate

L’action « Exécuter le script » donne aux personnes qui utilisent le connecteur Excel un accès significatif à votre classeur et à ses données. En outre, il existe des risques de sécurité avec les scripts qui effectuent des appels d’API externes, comme expliqué dans Appels externes à partir de Power Automate. Si votre administrateur est préoccupé par l’exposition de données hautement sensibles, il peut soit désactiver le connecteur Excel Online, soit restreindre l’accès aux scripts Office via les contrôles d’administrateur Scripts Office.

Pour les administrateurs qui ont activé des stratégies d’accès conditionnel pour les appareils non gérés dans leur locataire, il est recommandé de désactiver Power Automate sur les appareils non gérés. Ce processus est détaillé dans le billet de blog Contrôler l’accès à Power Apps et Power Automate avec les stratégies d’accès conditionnel Azure AD.

Transfert de données dans des flux pour les scripts

Power Automate vous permet de passer des données entre des actions de flux. Les scripts peuvent être configurés pour accepter les informations dont vous avez besoin et retourner ce que vous voulez de votre classeur à votre flux. Les données sont transmises aux scripts en tant que valeurs statiques, expressions ou contenu dynamique. Vous trouverez des détails sur le connecteur d’un service individuel dans la documentation du connecteur Power Automate.

Découvrez en détail comment transmettre des données vers et à partir de vos scripts avec la documentation suivante.

Exemple

La capture d’écran suivante montre un flux Power Automate qui est déclenché chaque fois qu’une nouvelle réponse à un formulaire est envoyée. Le flux exécute un script qui ajoute la valeur de satisfaction du formulaire à une table. La satisfaction moyenne actuelle est retournée et envoyée sous forme d’e-mail.

Éditeur de flux Power Automate montrant l’exemple de flux.

La main fonction du script spécifie la nouvelle valeur de satisfaction en tant que paramètre d’entrée (newData). Le script retourne la valeur de satisfaction moyenne de la table.

function main(workbook: ExcelScript.Workbook, newData: string): number {
  // Add the new data to the table.
  const table = workbook.getTable("SurveyTable");
  table.addRow(-1, [newData]);

  // Get the current satisfaction total.
  const satisfactionColumn = table.getColumnByName("Current Satisfaction");
  const values = satisfactionColumn.getRangeBetweenHeaderAndTotal().getValues();
  let total = 0.0;
  values.forEach((value) => {
    total += value[0] as number;
  });

  // Return the average satisfaction.
  return total / values.length;
}

Remarque

Le paramètre de script est de type string , car il s’agit du type retourné par l’action Forms pour toutes les valeurs.

Trouvez des exemples complets avec des procédures pas à pas dans exemples et scénarios de scripts Office. Beaucoup utilisent des scripts Office au centre des flux Power Automate.

Voir aussi