🐍 Outils à utiliser
👶Premiers pas
Pour utiliser des fonctions Python directement sur Excel, il est nécessaire d'activer le complément Python sur Excel:
👉 Onglet Accueil/Compléments puis "Rechercher des compléments". Il vous faut rechercher le complément "Python for Excel".

Une fois le complément installé, rendez-vous sur la partie "Editeur" (logo avec le stylo ✏️).

Ce qui apparaît est ce que l'on appelle une fonction. Une fonction est un conteneur 📦 qui va nous permettre de rédiger notre script (liste des commandes à exécuter).
La commande def nous permet d'informer l'ordinateur du début de votre contenant. Ensuite, vous devez nommer votre fonction, c'est ce qui vous permettra de l'appeler. Vous pouvez choisir n’importe quel nom pour la fonction que vous créez, à l’exception des mots-clés réservés du langage, et à la condition de n’utiliser aucun caractère spécial ou accentué (le caractère souligné « _ » est permis). Dans l'exemple, la fonction s'appelle "hello". Si vous voulez l'appeler dans Excel, vous devez faire "=hello("Thomas")" pour l'exécuter.
Entre les parenthèses, vous pouvez voir "name", c'est ce qu'on appelle un argument. C'est une variable qui recevra la valeur passée entre les parenthèses lorsque vous appellerez votre fonction. Dans le paragraphe précédant, j'ai écrit "=hello("Thomas")". L'argument name va donc avoir comme valeur : "Thomas". Nous allons voir prochainement pourquoi il y a des (""), et comment l'utiliser. Les deux points ":" à la fin de la ligne permettent de prévenir qu'un bloc indenté va suivre. Dans beaucoup de codes, les blocs sont définis par des balises ou des accolades, en Python, l'indentation permet de dire à l'ordinateur que la partie indentée qui va suivre va faire parti de notre fonction. Lorsque l'on revient au niveau d'indentation précédent, cela veut dire que l'on sort de la structure.
La ligne suivante est une chaîne de caractères placée seule dans la fonction. Lorsqu'elle est située juste après le def, Python l'interprète comme une documentation (appelée docstring). Cette documentation peut être consultée automatiquement par certains outils. Pour ajouter de simples commentaires destinés au développeur, on utilise généralement le caractère #.
La commande suivante sera : return f"hello {name}!"
L'instruction return nous permet d'informer l'ordinateur que l'on va donner comme résultat ce qui suit. C'est la donnée que doit renvoyer la fonction (chaine de caractères, nombre, tableau...) dans Excel. Ce qui est renvoyé dans cet exemple est une chaine de caractères dans laquelle on va intégrer la valeur de l'argument name. Vous pouvez en apprendre plus dans la partie sur les variables. Lorsque l'instruction return est exécutée, la fonction s'arrête immédiatement et renvoie le résultat indiqué.
Les lignes en vert en dessous sont des commentaires. On remarque les commentaires par le caractère "#" qui informe du début du commentaire.
En dessous se trouvent plusieurs boutons, la liste déroulante vous permet de sélectionner les fonctions que vous avez enregistré dans Excel et les boutons :
💻 : Vous permet d'afficher la console. Cette console vous permet à l'aide de la commande print() d'afficher les données à n'importe quel moment de votre programme. Cela peut aider pour le débogage ou simplement pour vérifier le bon enchaînement des calculs.
💾 : Vous permet d'enregistrer votre fonction. Une fonction ne peut pas fonctionner dans Excel sans auparavant avoir été enregistré. Si vous modifiez votre fonction, il est nécessaire d'enregistrer de nouveau pour appliquer les modifications à votre fonction.
❌ : Vous permet de supprimer votre fonction de la liste des fonctions disponibles sur Excel.
💱 Formats et conversions
Le tableau suivant vous explique comment sera formaté les éléments pris dans Excel. Les différents formats vont être expliqués durant le cours.
| Type Excel | Type Python | Détails |
|---|---|---|
| Nombre | Float | Le format float est le format numérique en Python. Dans ce complément Excel, les nombres sont généralement transmis à Python sous forme de float (nombre à virgule). |
| Chaine de caractères (Texte) | String | Le format String est le format des chaines de caractères (du texte) en Python. |
| Cellule vide | None | En Python, None permet de représenter le vide, l'absence de données. |
| VRAI/FAUX (boolean) | bool | Les valeurs de type VRAI/FAUX vont devenir des boolean en Python (True/False) |
| Date | Float | Dans ce complément, les dates Excel sont transmises sous forme de nombres flottants. Chaque jour correspond à une unité. Par exemple, 1 heure vaut 1/24 et 1 minute vaut 1/1440. |
| Plage de cellules | List | Cela va renvoyer une liste de liste des données des cellules. La première liste va contenir les listes des lignes, les listes des lignes vont contenir les valeurs des cellules sur ces lignes. |
Ce complément permet d'utiliser de nombreuses bibliothèques Python courantes, comme numpy, pandas, scipy, matplotlib, scikit-learn, seaborn, statsmodels, polars, pyarrow ou encore duckdb. Certaines bibliothèques supplémentaires peuvent également être installées via le système de gestion des packages fourni par le complément. Consultez la documentation officielle pour connaître la liste complète des bibliothèques disponibles.