Aller au contenu principal
Mis à jour le

C'est quoi Python dans Excel ?

Python dans Excel permet d'écrire du code Python directement dans une cellule, avec la fonction =PY(). Le code ne s'exécute pas en local mais dans le cloud Microsoft, sur une distribution Anaconda où pandas, matplotlib et scikit-learn sont déjà chargés. La cellule renvoie alors soit un objet Python, soit une valeur posée dans la feuille.

Cellule Excel utilisant la fonction =PY() pour produire un DataFrame pandas affiché sous le tableau
La fonction =PY() exécute du code Python dans la cellule et renvoie ici un DataFrame pandas.

À quoi sert Python dans Excel

Python dans Excel Icône du bouton Insérer Python sert à mener une vraie analyse de données sans quitter ta feuille. Certains traitements, comme une régression, un nettoyage lourd ou une visualisation statistique fine, sont pénibles voire hors de portée à la formule. Avec =PY(), tu écris ce code Python dans une cellule, tu travailles tes données en DataFrame pandas et le résultat revient dans la grille.

Tu y gagnes surtout quand tes besoins débordent ce que les fonctions natives font bien, comme une analyse statistique poussée, un peu de machine learning avec scikit-learn ou un graphique matplotlib soigné. Le code part alors sur le cloud Microsoft, et la cellule te rend soit un objet Python, soit une valeur posée dans la feuille.

C'est le pont idéal pour qui connaît déjà pandas et veut garder Excel comme interface commune. Tes collègues ouvrent le classeur normalement, sans rien installer ni connaître Python, et lisent le tableau que ton code a produit.

Le conseil du pro
Les cellules =PY() se calculent ligne par ligne, de gauche à droite puis de haut en bas. Range tes étapes dans cet ordre : une variable appelée avant d'être définie renvoie une erreur.

Comment utiliser Python dans Excel

Pour lancer du Python dans Excel, il te faut une version récente de Microsoft 365. Tu bascules une cellule en mode Python, tu écris ton code, tu références tes plages puis tu valides pour ramener le résultat dans la feuille.

  1. 1Clique sur une cellule vide, tape =PY( puis appuie sur Entrée pour la basculer en mode Python. Tu peux aussi passer par l'onglet Formules, bouton Insérer du Python.
  2. 2Écris ton code Python dans la cellule, sur une ou plusieurs lignes. Tu as déjà accès à pandas, matplotlib, seaborn et scikit-learn, sans rien installer.
  3. 3Pour lire les données de la feuille, référence une plage avec la fonction xl(), par exemple xl('A1:C100', headers=True) pour la charger en DataFrame pandas.
  4. 4Valide avec Ctrl+Entrée. Le code part s'exécuter sur le cloud Microsoft et le résultat revient dans la cellule après quelques secondes.
  5. 5Fais un clic droit sur la cellule pour choisir le mode de sortie, un objet Python comme un DataFrame ou un graphique, ou une valeur Excel posée dans la feuille.
L'astuce en plus
Une cellule =PY() renvoie la valeur de sa dernière ligne de code, les lignes du dessus préparant le calcul sans rien afficher. Pour voir un résultat intermédiaire, termine la cellule par le nom de la variable.

Quelle différence entre Python dans Excel et VBA

Python dans Excel et le VBA répondent à deux besoins opposés, même si les deux ajoutent du code au tableur. Le VBA automatise le classeur lui-même, puisqu'il ouvre des fichiers, met en forme des feuilles, enchaîne des gestes et pilote même Word ou Outlook. Python, lui, reste dans sa cellule et se concentre sur le calcul et l'analyse de tes données.

La frontière est nette du côté de l'exécution. Une macro VBA tourne sur ta machine et agit sur l'interface d'Excel elle-même. Le code Python, lui, part sur le cloud Microsoft : il ne peut ni cliquer sur un bouton, ni ouvrir un autre fichier, ni toucher à la mise en forme. Il reçoit des données, il en renvoie.

Le choix se résume donc à ce que tu cherches à faire. Pour automatiser une suite d'actions dans Excel, c'est le VBA ou une macro. Pour trier, croiser et modéliser un jeu de données avec pandas, c'est Python dans Excel.

Le savais-tu ?
Le code s'exécute dans un bac à sable Microsoft coupé d'internet. Impossible d'y lancer un pip install ou d'aller chercher une donnée sur le web : tu restes limité au jeu de bibliothèques fourni par Anaconda.
Exemple

Nettoyer et croiser des exports bruts

Tu reçois chaque semaine des exports de plusieurs plateformes publicitaires, avec des colonnes qui ne portent jamais le même nom et des formats de dates différents. À la formule, harmoniser tout ça prend une matinée.

Dans une cellule, tu écris =PY() puis quelques lignes de pandas qui renomment les colonnes, convertissent les dates et fusionnent les tables sur la clé campagne. Le DataFrame propre revient directement dans ta feuille.

Ta procédure de nettoyage tient dans deux ou trois cellules réutilisables. La semaine suivante, tu remplaces les données source et tu réexécutes, sans refaire tout le travail à la main.

FAQ

Questions fréquentes sur le python dans Excel

Non, rien à installer. Le code écrit dans =PY() s'exécute dans le cloud Microsoft, sur un environnement Anaconda qui embarque déjà pandas, matplotlib, seaborn et scikit-learn. Il te faut seulement une connexion internet et une version d'Excel compatible. Tu ne gères ni environnement Python, ni bibliothèques, ni mises à jour sur ta machine.

Ressources

Du mot à la pratique

Tu sais maintenant ce que le mot veut dire. Reste à s’en servir : la formule, le fichier, et le cours qui remet tout dans l’ordre.

Tout le lexique