Python dans Excel : 10 astuces vraiment utiles à connaître

Rana Ramjaun

Responsable des contenus web chez MyConnecting, je partage mon expertise autour de sujets en lien avec la formation professionnelle et le développement des compétences.

Partager l'article:

Python dans Excel permet d’utiliser la puissance de bibliothèques comme pandas, NumPy, Matplotlib ou seaborn sans quitter son classeur. Nettoyage de données, détection d’anomalies, analyses statistiques ou visualisations avancées : voici 10 usages particulièrement intéressants pour exploiter ses données autrement.

Excel sait déjà faire énormément de choses. Fonctions de recherche, tableaux croisés dynamiques, Power Query, graphiques, formules dynamiques… Alors pourquoi ajouter Python ?

Parce que certaines analyses deviennent rapidement complexes lorsqu’elles reposent uniquement sur une succession de formules ou de manipulations.

Avec Python dans Excel, Microsoft fait entrer directement le langage de programmation dans le tableur. Le code est saisi dans une cellule Excel puis exécuté dans le cloud Microsoft. Il n’est donc pas nécessaire d’installer Python sur son ordinateur. La fonctionnalité est disponible avec les abonnements Microsoft 365 éligibles sur Windows, sur le Web et sur Mac.

L’intérêt n’est pas de remplacer Excel par Python. Il consiste plutôt à utiliser le bon outil au bon moment. Voici dix exemples.

1. Importer un tableau Excel dans Python en quelques secondes

Commençons par la base. Pour utiliser Python dans Excel, sélectionnez une cellule, rendez-vous dans Formules > Insérer Python ou saisissez =PY avant de sélectionner la fonction proposée par Excel.

Python dans Excel possède notamment une fonction xl() permettant de récupérer les données présentes dans une plage ou un tableau Excel.

Par exemple :

xl(« Tableau1[#All] », headers=True)

Python récupère alors les données du tableau, y compris ses en-têtes, pour pouvoir les manipuler.

C’est ce lien direct entre la feuille de calcul et Python qui rend la fonctionnalité intéressante : les données restent dans Excel tandis que l’analyse peut être réalisée en Python.

2. Nettoyer rapidement un tableau avec pandas

Vous recevez un fichier de plusieurs milliers de lignes contenant des doublons, des cellules vides ou des données incohérentes ?

On peut évidemment traiter une grande partie de ces problèmes avec les outils classiques d’Excel ou Power Query. Python devient toutefois particulièrement pratique lorsqu’il faut enchaîner plusieurs opérations de nettoyage.

La bibliothèque pandas, disponible par défaut dans Python dans Excel, est précisément conçue pour manipuler des données structurées.

Une instruction comme :

df.drop_duplicates()

permet par exemple de supprimer les doublons d’un jeu de données Python.

On peut ensuite compléter le traitement pour gérer les valeurs manquantes, filtrer certaines observations ou standardiser des colonnes.

L’intérêt apparaît surtout lorsque le nettoyage devient complexe : au lieu d’effectuer successivement plusieurs manipulations, on décrit les transformations à appliquer aux données.

3. Filtrer des milliers de lignes selon plusieurs critères

Les filtres Excel sont efficaces pour explorer rapidement un tableau. Mais les conditions peuvent devenir beaucoup plus difficiles à manipuler lorsque l’analyse porte sur plusieurs variables.

Imaginons un fichier commercial contenant le chiffre d’affaires, la région, le commercial, la marge et le type de client.

Python permet par exemple d’isoler très précisément :

Les clients B2B situés en Île-de-France dont le chiffre d’affaires dépasse un certain seuil et dont la marge est inférieure à la moyenne.

Avec pandas, plusieurs conditions peuvent être combinées dans une même analyse.

Cette logique devient particulièrement intéressante pour explorer des fichiers comportant beaucoup de variables sans multiplier les colonnes intermédiaires.

4. Repérer automatiquement des anomalies dans ses données

Une valeur inhabituelle peut être une erreur… ou une information très intéressante.

Un panier moyen soudainement dix fois supérieur aux autres, une durée anormalement élevée ou un chiffre d’affaires très éloigné de la tendance générale peuvent facilement passer inaperçus dans un grand tableau.

Python permet d’utiliser différentes méthodes statistiques pour identifier ces valeurs aberrantes, également appelées outliers.

On peut par exemple calculer la moyenne et l’écart-type d’une variable, puis identifier les valeurs qui s’en éloignent fortement.

L’objectif n’est pas nécessairement de supprimer ces observations. Il s’agit d’abord de les faire ressortir pour comprendre ce qui s’est passé.

Pour un contrôleur de gestion, un analyste, un responsable commercial ou une équipe RH, cette capacité peut transformer Excel en véritable outil d’exploration des données.

Formations

Formations Bureautique

Excel, Python et bien d’autres outils au programme, avec la possibilité de construire un parcours personnalisé selon vos besoins et votre niveau.

Découvrir nos formations bureautiques

5. Trouver des corrélations entre plusieurs variables

Deux variables évoluent-elles ensemble ?

Le chiffre d’affaires augmente-t-il avec le nombre de rendez-vous commerciaux ? Existe-t-il une relation entre ancienneté et performance ? Certaines catégories de produits évoluent-elles de manière similaire ?

Il serait possible de comparer ces variables une à une. Python permet d’aller beaucoup plus vite en calculant une matrice de corrélation portant sur plusieurs colonnes simultanément.

On obtient alors une vue d’ensemble des relations statistiques présentes dans le jeu de données.

Attention toutefois : une corrélation ne signifie pas qu’une variable provoque l’autre. Elle constitue avant tout un signal à explorer.

C’est précisément l’un des intérêts de Python dans Excel : passer plus facilement du tableau à l’analyse.

6. Créer des graphiques plus avancés

Excel possède déjà un excellent moteur de visualisation. Mais Python ouvre l’accès à d’autres types de représentations grâce notamment à Matplotlib et seaborn, deux bibliothèques disponibles directement dans Python dans Excel.

On peut par exemple créer une carte de chaleur pour visualiser les corrélations entre différentes variables ou un pair plot, qui affiche simultanément les relations entre plusieurs variables.

Microsoft montre d’ailleurs dans sa documentation comment générer ce type de visualisation à partir d’un tableau Excel avec seaborn. Le graphique obtenu peut ensuite être affiché directement dans le classeur.

Python ne rend donc pas les graphiques Excel inutiles. Il élargit simplement la palette disponible lorsque l’analyse nécessite des représentations statistiques plus poussées.

7. Résumer rapidement un grand jeu de données

Avant d’analyser un fichier, une question revient souvent : qu’est-ce qu’il contient réellement ?

Avec pandas, il est possible d’obtenir très rapidement plusieurs statistiques descriptives : nombre d’observations, moyenne, écart-type, valeurs minimales et maximales ou encore quartiles.

Cela permet de réaliser une première photographie du jeu de données avant de commencer une analyse plus approfondie.

Sur un tableau contenant 50 000 lignes, ce type de synthèse peut immédiatement révéler une colonne présentant des valeurs anormales ou une dispersion beaucoup plus importante que prévu.

Python devient alors une sorte de loupe supplémentaire posée sur le classeur Excel.

8. Réaliser des analyses statistiques directement dans Excel

Moyennes et pourcentages suffisent pour de nombreux usages professionnels. Dans certains métiers, il peut néanmoins être nécessaire d’aller plus loin.

Python dans Excel donne accès à des bibliothèques comme statsmodels, NumPy ou SciPy permettant de réaliser des calculs statistiques plus avancés.

On peut notamment explorer des distributions, mesurer des relations entre variables ou construire certains modèles statistiques.

C’est particulièrement intéressant pour les personnes qui travaillaient auparavant avec Excel d’un côté et un environnement de data science de l’autre.

Une partie de ces analyses peut désormais être réalisée sans sortir du classeur utilisé par le reste de l’équipe.

9. Transformer des données sans multiplier les formules

Un classeur devient parfois difficile à maintenir non pas parce que le calcul est particulièrement compliqué, mais parce qu’il repose sur une multitude de colonnes intermédiaires.

Une première formule nettoie une donnée. Une deuxième la transforme. Une troisième applique une condition. Une quatrième classe le résultat.

Python permet dans certains cas de regrouper cette logique dans un traitement plus compact.

Cela ne signifie pas que Python doit remplacer les formules Excel. Pour une simple recherche ou un calcul classique, une formule reste généralement plus accessible.

Mais lorsque les transformations s’accumulent, Python peut permettre de rendre explicite la chaîne de traitement plutôt que de la disperser dans plusieurs dizaines de cellules.

Le choix dépend donc du problème : formule Excel, Power Query et Python sont davantage complémentaires que concurrents.

10. Utiliser Copilot pour profiter de Python sans être développeur

C’est probablement l’évolution qui rend Python dans Excel accessible au plus grand nombre.

Microsoft permet désormais d’utiliser Copilot avec Python dans Excel pour réaliser des analyses avancées à partir de questions formulées en langage naturel.

Vous pouvez par exemple demander :

« Compare les ventes du premier et du deuxième trimestre et identifie les principales anomalies. »

Copilot peut produire une réponse, proposer une visualisation et, pour des analyses plus poussées, utiliser Python. Microsoft indique également que le code généré peut être consulté afin de comprendre comment le résultat a été obtenu.

Cette évolution change considérablement le point d’entrée.

Auparavant, utiliser Python impliquait généralement d’en connaître au minimum la syntaxe. Désormais, un utilisateur peut commencer par exprimer son besoin métier, puis examiner le code utilisé pour produire l’analyse.

Cela ne dispense évidemment pas de vérifier le résultat. Microsoft recommande d’ailleurs explicitement de contrôler les contenus générés par Copilot.

Formations

Formations Bureautique

Excel, Python et bien d’autres outils au programme, avec la possibilité de construire un parcours personnalisé selon vos besoins et votre niveau.

Découvrir nos formations bureautiques

FAQ

Qu’est-ce que Python dans Excel ?

Python dans Excel est une fonctionnalité de Microsoft 365 permettant d’écrire et d’exécuter du code Python directement depuis un classeur Excel. Les calculs sont réalisés dans le cloud Microsoft et leurs résultats peuvent être affichés dans la feuille de calcul.

Comment activer Python dans Excel ?

Dans une version compatible d’Excel, sélectionnez Formules > Insérer Python. Il est également possible de saisir =PY dans une cellule puis de sélectionner la fonction Python proposée par Excel.

Python dans Excel est-il gratuit ?

La disponibilité dépend de l’abonnement Microsoft 365. Microsoft inclut Python dans Excel avec plusieurs abonnements éligibles, tandis qu’un module complémentaire permet notamment d’accéder à des capacités de calcul Premium et à davantage de modes de recalcul.

Quelles bibliothèques Python sont disponibles dans Excel ?

Parmi les principales bibliothèques disponibles figurent pandas, NumPy, Matplotlib, seaborn et statsmodels. Microsoft propose également d’autres bibliothèques issues de la distribution Anaconda.

Peut-on utiliser Python dans Excel sans connaître Python ?

Oui, pour certains usages. Copilot dans Excel peut notamment utiliser Python pour réaliser des analyses avancées à partir de requêtes formulées en langage naturel. Des connaissances en Python restent cependant utiles pour comprendre, modifier et vérifier le code produit.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Consulter d'autres articles

window.addEventListener('load', function () { document.querySelectorAll('.formation-avis.vide').forEach(function(el){ var accordion = el.closest('.elementor-element[data-widget_type="accordion.default"]'); if(accordion){ accordion.style.display = 'none'; } }); });