Prise en main de Python dans Excel

Commencer à utiliser Python 

Pour commencer à utiliser Python dans Excel, sélectionnez une cellule, accédez à Formules dans le ruban, puis sélectionnez Insérer Python. Cela indique à Excel que vous souhaitez écrire une formule Python dans la cellule sélectionnée. 

Onglet Formules du ruban Excel, avec le bouton Insérer Python mis en évidence.

Vous pouvez également utiliser la fonction =PY dans une cellule pour activer Python. Après avoir entré =PY dans la cellule, choisissez PY dans le menu saisie semi-automatique de la fonction avec les touches flèche vers le bas et Tabulation, ou ajoutez une parenthèse ouvrante à la fonction : =PY(. Vous pouvez maintenant entrer du code Python directement dans la cellule. La capture d’écran suivante montre le menu Saisie semi-automatique avec la fonction PY sélectionnée.

Menu Saisie semi-automatique d’une formule Excel, avec la formule Python sélectionnée.

Une fois Que Python est activé dans une cellule, cette cellule affiche une icône PY verte. La barre de formule affiche la même icône PY lorsque la cellule Python est sélectionnée. Consultez la capture d’écran suivante pour obtenir un exemple. 

Classeur Excel avec Python dans Excel activé dans une cellule, montrant l’icône PY verte dans la cellule.

Combiner Python avec des cellules et des plages Excel

Pour référencer des objets Excel dans une cellule Python, vérifiez que la cellule Python est en mode Édition, puis sélectionnez la cellule ou la plage que vous souhaitez inclure dans la formule Python. Cette opération remplit automatiquement la cellule Python avec l’adresse de la cellule ou de la plage que vous avez sélectionnée. 

Conseil : Utilisez le raccourci clavier F2 pour basculer entre le mode Entrée et le mode Édition dans les cellules Python. Basculer vers le mode Édition vous permet de modifier la formule Python, et basculer vers le mode Entrée vous permet de sélectionner des cellules ou des plages supplémentaires avec votre clavier.


Python dans Excel utilise la fonction Python personnalisée xl() pour interfacer Entre Excel et Python. La fonction xl() accepte des objets Excel tels que des plages, des tableaux, des requêtes et des noms.

Vous pouvez également taper directement des références dans une cellule Python avec la fonction xl() . Par exemple, pour référencer la cellule A1 , utilisez xl(“A1”) et, pour la plage B1:C4 , utilisez xl(“B1:C4”). Pour une table avec des en-têtes nommés MyTable, utilisez xl(“MyTable[#All]”, headers=True). Le spécificateur [#All] garantit que la table entière est analysée dans la formule Python et headers=True garantit que les en-têtes de table sont traités correctement. Pour en savoir plus sur les spécificateurs tels que [#All], consultez Utilisation de références structurées avec des tableaux Excel.

L’image suivante montre un calcul Python dans Excel ajoutant les valeurs des cellules A1 et B1, avec le résultat Python retourné dans la cellule C1

...

Barre de formule 

Utilisez la barre de formule pour un comportement d’édition de type code, comme l’utilisation de la touche Entrée pour créer de nouvelles lignes. Développez la barre de formule à l’aide de l’icône de flèche vers le bas pour afficher plusieurs lignes de code à la fois. Vous pouvez également utiliser le raccourci clavier Ctrl+Maj+vous pour développer la barre de formule. Les captures d’écran suivantes montrent une barre de formule avant et après son développement pour afficher plusieurs lignes de code Python.

...

Avant de développer la barre de formule :
 

...

Après avoir développé la barre de formule :
 

Types de sortie 

Utilisez le menu de sortie Python dans la barre de formule pour contrôler la façon dont les calculs Python sont retournés. Retourne des calculs en tant qu’objets Python ou convertit les calculs en valeurs Excel et les génère directement dans une cellule. La capture d’écran suivante montre la formule Python retournée en tant que valeur Excel. 

Conseil : Vous pouvez également utiliser le menu contextuel pour modifier le type de sortie Python. Ouvrez le menu contextuel et accédez à Sortie Python, puis sélectionnez le type de sortie souhaité.

...

La capture d’écran suivante montre la même formule Python que la capture d’écran précédente, désormais retournée en tant qu’objet Python. Lorsqu’une formule est retournée en tant qu’objet Python, la cellule affiche une icône carte.

Remarque : Les résultats de formule retournés aux valeurs Excel sont traduits dans leur équivalent Excel le plus proche. Si vous envisagez de réutiliser le résultat dans un futur calcul Python, il est recommandé de retourner le résultat en tant qu’objet Python. Le renvoi d’un résultat sous forme de valeurs Excel vous permet d’exécuter des analyses Excel, telles que des graphiques Excel, des formules et une mise en forme conditionnelle, sur la valeur.

...

Un objet Python contient des informations supplémentaires dans la cellule. Pour afficher les informations supplémentaires, ouvrez le carte en sélectionnant l’icône carte. Les informations affichées dans le carte sont un aperçu de l’objet, ce qui est utile lors du traitement d’objets volumineux.

Python dans Excel peut retourner de nombreux types de données sous forme d’objets Python. Un objet DataFrame est un objet Python utile dans Excel. Pour en savoir plus sur les DataFrames Python, consultez Python dans les DataFrames Excel.  

Données externes 

Pour importer des données externes, utilisez la fonctionnalité Obtenir & transformer dans Excel. Get & Transform utilise Power Query pour importer des données externes. Toutes les données que vous traitez avec Python dans Excel doivent provenir de votre feuille de calcul ou via Power Query. Pour plus d’informations, voir Utilisation de données Power Query avec Python dans Excel

Important : Pour protéger votre sécurité, les fonctions de données externes courantes dans Python, telles que pandas.read_csv et pandas.read_excel, ne sont pas compatibles avec Python dans Excel. Pour plus d’informations, consultez Sécurité des données et Python dans Excel.

Ordre de calcul 

Les instructions Python traditionnelles calculent de haut en bas. Dans une cellule Python dans Excel, les instructions Python font la même chose : elles calculent de haut en bas. Mais dans une feuille de calcul Python dans Excel, les cellules Python calculent dans l’ordre principal des lignes. Cela signifie que les calculs de cellule s’exécutent sur une ligne (de la colonne A à la colonne XFD), puis sur chaque ligne suivante dans la feuille de calcul. 

Les instructions Python étant ordonnées, chaque instruction Python a une dépendance implicite sur l’instruction Python qui la précède immédiatement dans l’ordre de calcul.  

L’ordre de calcul est important lors de la définition et du référencement des variables dans une feuille de calcul, car vous devez définir des variables avant de pouvoir les référencer.  

Important : L’ordre de calcul des lignes principales s’applique également aux feuilles de calcul d’un classeur et est basé sur l’ordre des feuilles de calcul dans le classeur. Si vous utilisez plusieurs feuilles de calcul pour analyser des données avec Python dans Excel, veillez à inclure les données et toutes les variables stockant des données dans des cellules et des feuilles de calcul précédant les cellules et feuilles de calcul qui analysent ces données.   

Erreurs 

Recalcul 

Lorsqu’une valeur dépendante d’une cellule Python change, toutes les formules Python sont recalculées séquentiellement. Pour suspendre les recalculs Python et améliorer les performances, utilisez le mode Calcul partiel ou Calcul manuel . Ces modes vous permettent de déclencher un calcul lorsque vous êtes prêt. Pour modifier ce paramètre, accédez au ruban, sélectionnez Formules, puis ouvrez Options de calcul. Ensuite, sélectionnez le mode de calcul souhaité. Les modes Calcul partiel et Calcul manuel suspendent le recalcul automatique pour Python et les tables de données.

La désactivation du recalcul automatique dans un classeur pendant le développement Python peut améliorer les performances et les vitesses de calcul des cellules Python individuelles. Toutefois, vous devez recalculer manuellement le classeur pour garantir l’exactitude dans chaque cellule Python. Il existe trois façons de recalculer manuellement un classeur en mode Calcul partiel ou Calcul manuel .

  1. Utilisez le raccourci clavier F9.
  2. Accédez à Formules > Calculer maintenant dans le ruban.
  3. Accédez à une cellule avec une valeur obsolète, affichée avec une mise en forme barrée, puis sélectionnez le symbole d’erreur en regard de cette cellule. Sélectionnez ensuite Calculer maintenant dans le menu.

Les calculs Python dans Excel peuvent retourner des erreurs telles que #PYTHON!, #BUSY!, et #CONNECT! vers des cellules Python. Pour plus d’informations, consultez Résoudre les erreurs Python dans Excel.

Articles connexes 

Présentation de Python dans Excel 

Présentation de Python – Formation | Microsoft Learn

Résoudre les erreurs Python dans Excel 

Sécurité des données et Python dans Excel

Python dans les DataFrames Excel

Création de python dans des graphiques et des graphiques Excel

Utilisation de données Power Query avec Python dans Excel