Nous avons la chance d’assister présentement à l’émergence de technologies dites low code ou no code de plus en plus performantes. Microsoft ne donne pas sa place dans le domaine. Déjà, des solutions comme Power Query permettent d’automatiser un nombre considérable de tâches sans que les usagers soient obligés d’apprendre le code sous-jacent, plus précisément le code M. Et que dire de ces solutions Power Automate, Power Apps et maintenant Power Virtual Agents? Cet article vise à vous démontrer comment Power Automate (anciennement Microsoft Flow) peut révolutionner vos solutions Excel, en partageant un exemple concret où Power Automate sera utilisé pour faire l’envoi automatique de courriels personnalisés à partir d’une base de données.
Création d’une table de données dans Excel Online
Vous devez d’abord créer une table de données (données mises sous forme de tableau) dans Excel Online. Le fichier doit être enregistré soit sur SharePoint ou sur OneDrive for Business. Cette table doit contenir toutes les informations qui devront faire partie de votre envoi. Par exemple, ici, nous avons une table pour aviser par courriel les individus qui sont en retard dans l’envoi de leurs feuilles de temps. Plus précisément, on a une colonne indiquant des numéros de semaines, une colonne indiquant des noms d’individus, une colonne indiquant les adresses courriels des individus (ici, c’est toujours la même adresse parce qu’on ne voulait pas envoyer de courriels à n’importe qui avec cette démo (!) mais en réalité, chaque courriel serait différent) et une colonne indiquant des liens vers une page (ici aussi, chaque lien pourrait être différent). Ce que l’on souhaite, c’est programmer l’envoi d’un courriel dont le titre fera référence à la semaine, la salutation fera référence à l’individu et le contenu fera référence au lien URL. Nous souhaitons évidemment que les courriels soient envoyés aux bonnes personnes selon la colonne Courriel. Pour ce faire, nous allons d’abord nous assurer d’ajouter un Complément (Add-in) à notre Excel Online. Ma version Excel Online est en anglais donc les copies d’écrans de cet article seront en anglais.
Tel que mentionné précédemment, Power Automate portait jadis le nom de Microsoft Flow. Il semble que le nom du complément (add-in) n’ait pas encore modifié. Vous devez donc taper Flow pour le retrouver dans la liste des compléments et l’ajouter. Le nom complet du complément, au moment d’écrire cet article est Microsoft Flow for Excel (Preview).
Une fois installé, vous le retrouverez dans le menu Données (Data).
Lorsque vous cliquerez dessus pour la première fois, un panneau s’affichera à la droite de votre écran, vous présentant des liens vers des articles complémentaires. Vous pourrez cliquer sur “Se connecter“. Il est d’ailleurs possible que vous ayez à vous connecter à quelques reprises durant le processus. Ceci suggère que vous avez déjà un compte Power Automate. Sinon, vous devrez en créer un (il est possible de créer gratuitement un compte d’essai).
Après avoir cliqué sur “Se connecter”, le panneau de droite affichera l’information ci-dessous. Si désiré, vous pouvez explorer les modèles dans le bas. Ce sont des flux déjà programmés que vous pouvez simplement personnaliser pour vos besoins.
Dans notre cas, comme il n’existe pas de modèle, nous allons plutôt cliquer sur Nouveau (New) / Instantané à partir de zéro (Instant – from blank).
Nous devrons ensuite remplir les sections demandées ci-dessous.
Nous pouvons renommer notre flux pour mieux le retrouver dans notre liste éventuelle de flux (vous verrez, quand vous aurez créé un premier flux, vous voudrez rapidement en créer d’autres!). La location est la location du fichier comprenant la base de données. Ça doit nécessairement être OneDrive for Business ou SharePoint. Il faut aussi indiquer l’emplacement du fichier et le nom de la table dans le fichier. Quand c’est fait, on peut cliquer sur Ajouter une entrée (Add an input).
L’action que l’on souhaite programmer, c’est l’envoi d’un courriel. On va donc chercher notre logiciel d’envoi de courriels. Ici, j’ai tapé Outlook et j’ai ensuite cliqué sur Office 365 Outlook puisque c’est le logiciel d’envoi de courriels que j’utilise. Il faudra ensuite sélectionner une action.
Nous allons sélectionner l’action Envoyer un courriel (Send and email (V2)) et remplir ensuite les champs demandés.
Il sera possible d’utiliser des paramètres dynamiques, i.e. des champs de notre table de données.
Par exemple, dans la portion À (To) on veut aller chercher la colonne Courriel.
Au niveau du sujet, nous allons composer un texte. Nous allons donc inscrire “Retard feuille de temps semaine ” et nous allons cliquer sur le champ Semaine.
Pour ce qui est du corps du courriel, nous allons à nouveau choisir des champs dynamiques pour compléter et personnaliser notre message.
Habitué de travailler avec Excel et besoin de vous mettre à jour avec les nouvelles fonctionnalités qu’offre maintenant Excel 365 ? Pour concevoir des solutions en phase avec les développements technologiques actuels, jetez un œil à nos formations sur Excel 365.
À noter qu’il y a également une section de paramètres avancés. Il est par exemple possible de spécifier de qui provient l’envoi, de mettre des courriels en copie ou encore d’insérer une pièce jointe.
Pour activer le flux, il faudra d’abord sélectionner les lignes concernées de notre table de données (ici, je les ai toutes sélectionnées) et cliquer ensuite sur Rouler (Run).
On peut voir ici que j’ai bien reçu les courriels avec les différents titres, adressés aux différentes personnes.
Et quand j’ouvre un courriel, on peut lire le message personnalisé.
Tout ça, programmé en quelques minutes, sans VBA ! Commencez-vous à comprendre tout le potentiel des applications « low code » et « no code » ?
Formations recommandées
Si vous travaillez dans Excel et souhaitez commencer à automatiser des tâches, sans faire intervenir la programmation VBA, je vous recommande la formation suivante:
Si vous travaillez dans Power BI et que vous souhaitez automatiser davantage vos rapports ou si vous souhaitez vous familiariser avec d’autres usages de Power Automate, je vous recommande la formation suivante:
MERCI
Merci! C’est très intéressant!
Quelques questions cependant: est-ce que les personnes qui reçoivent le courriel et le lien doivent faire partie de notre organisation pour pouvoir ouvrir le lien? Et ce lien peut-il mener vers un dossier qui contient plusieurs documents?
Bonjour,
Le courriel généré par cette procédure est de la même nature que n’importe quel autre courriel.
Cela signifie que vous pouvez envoyer des courriels à qui vous voulez, comme vous le faites normalement, que ce soit des personnes à l’intérieur ou à l’extérieur de votre organisation.
De même, pour ce qui est du ou des liens compris dans votre courriel, vous pouvez insérer ce que vous désirez. Cela dit, si cet URL pointe vers un répertoire protégé alors bien entendu, les règles de sécurité vont s’appliquer. Mais si cet URL pointe vers un répertoire public, dans ce cas, tout le monde pourra y avoir accès.
Au plaisir,
Sophie
Merci!
Bonjour Sophie,
Est-il possible de faire envoyer des fichiers différents pour chaque destinataire? Par exemple, si on prend votre exemple de feuille de temps, pourrait-on joindre le fichier individuel de chaque personne en pj? (dans mon cas ce seraient plutôt des fichiers de rapports financiers par institution/destinataire).
merci!
Je m’interroge, savez vous comment je peux faire pour pointer les elements que j’ai deja pu envoyer , afin d’eviter , les doublons. j’ai tenter de mettre un declencheur avec une ligne mais je n’arrive pas a obtenir le resultat que je souhaiterai , auriez vous une solution ?
merci pour votre aide.
Bonjour Jack,
Je ne suis pas certaine de bien saisir votre problématique, mais voici tout de même un début de piste de solution.
Vous pourriez ajouter une action suite à l’envoi du courriel pour mettre à jour le fichier Excel et ajouter dans une colonne, un indicateur que le courriel a été envoyé.
Puis ajouter une condition à votre flux qui pourra vérifier à l’aide de cette colonne si le courriel a été envoyé. Si oui, on n’envoie pas de courriel pour cette ligne, sinon, on envoie un courriel.
Au plaisir,
Kim
Bonjour, Savez-vous comment on pourrait avoir un seul email, regroupant toutes les données, au lieu d’avoir un email par ligne Excel ? Dans votre exemple, si on voulait envoyer un courriel au gestionnaire avec le résumé de toutes les feuilles de temps en retard, et non pas qu’il soit inondé de courriels?
Bonjour Joana,
Il faudrait alors procéder différemment.
Voici une piste de solution.
Il serait possible de créer une page sommaire pour le gestionnaire dans une feuille Excel incluant toutes les feuilles de temps associées à ce gestionnaire et envoyer une copie de cet onglet dans un courriel.
Nous avons ouvert récemment un forum pour les questions en lien avec Power Automate, n’hésitez pas à l’utiliser si vous avez d’autres questions.
https://www.lecfomasque.com/forum
Au plaisir,
Kim