Passer au contenu du pied de page
UTILISER IRONXL POUR PYTHON

Comment fusionner des cellules dans un fichier Excel en utilisant Python

Dans le monde de la manipulation de feuilles de calcul, Excel s'impose comme un outil fondamental, offrant une multitude de fonctionnalités répondant à divers besoins dans les domaines de la finance, de l'ingénierie, des statistiques et bien plus encore. Parmi ses nombreuses fonctionnalités, la possibilité de fusionner des cellules spécifiques dans Excel est souvent utilisée pour améliorer la présentation et la visualisation des données. Dans le paysage dynamique de la gestion des données, l'organisation et la consolidation efficaces des données sont primordiales. Excel, grâce à ses fonctionnalités polyvalentes, est devenu un outil incontournable pour de nombreux professionnels. Cependant, lorsqu'il s'agit de fusionner ou de dissocier des cellules dans Excel par programmation, Python se révèle être un allié précieux. Dans cet article, nous verrons comment Python , associé à une bibliothèque comme IronXL , simplifie le processus de fusion de cellules dans un nouveau fichier Excel, permettant ainsi aux utilisateurs de rationaliser leurs flux de travail d'organisation des données.

Comment fusionner des cellules dans un fichier Excel avec Python

  1. Installez IronXL.
  2. Charger le classeur existant.
  3. Sélectionnez la feuille de calcul Excel.
  4. Utilisez la fonction Fusionner pour fusionner des cellules spécifiques.
  5. Utilisez la fonction Dissocier pour dissocier les cellules dans Excel.

Pourquoi utiliser IronXL ?

IronXL est une puissante bibliothèque Python développée et maintenue par Iron Software. Son objectif principal est de fournir un moyen intuitif et efficace de travailler avec des fichiers Excel (et d'autres formats de tableur) dans des applications et des sites web Python. Voici quelques caractéristiques clés d'IronXL :

  1. IronXL vous permet de lire des données à partir de fichiers Excel existants (XLSX, XLS, XLSM, XLTX, CSV et TSV). Vous pouvez également générer de nouveaux fichiers Excel et modifier les fichiers existants par programmation.
  2. IronXL fonctionne de manière transparente sur différentes plateformes, notamment Windows, macOS, Linux, Docker, Azure et AWS. Que vous développiez sur votre machine locale ou que vous déployiez sur le cloud, IronXL vous accompagne.
  3. La bibliothèque fournit une API facile à utiliser pour travailler avec des feuilles de calcul Excel. Vous pouvez charger des classeurs, sélectionner des feuilles de calcul, lire les valeurs des cellules, appliquer des styles , dissocier des cellules et effectuer diverses opérations sans configuration complexe.
  4. IronXL vous permet de styliser les cellules en définissant les propriétés de police, les motifs d'arrière-plan, les bordures et l'alignement. Vous pouvez formater les valeurs des cellules sous forme de texte, de nombres, de dates, de devises, de pourcentages, et bien plus encore.
  5. Vous pouvez utiliser des formules Excel, et celles-ci sont recalculées à chaque modification d'une feuille. Effectuer des calculs sur des plages de cellules, comme la recherche de la somme, de la valeur minimale ou maximale.

Utilisation d'IronXL pour fusionner des cellules dans un fichier Excel

Avant de commencer, assurez-vous d'avoir installé IronXL. Vous pouvez l'installer en utilisant pip :

pip install ironxl
pip install ironxl
SHELL

Cela installera IronXL dans notre projet.

Charger le classeur Excel

La toute première étape consiste à charger le classeur Excel en mémoire. Nous allons charger le fichier Excel suivant et l'utiliser tout au long de ce tutoriel.

Comment fusionner des cellules dans un fichier Excel avec Python : Figure 1 - Fichier Excel d'entrée

Le code suivant chargera le classeur existant dans notre projet.

from ironxl import *  # Import entire module from ironxl for Excel operations

# Set license key for IronXL (Replace the license key with an actual valid key)
License.LicenseKey = "IRONSUITE.XYZ.ABC.COM.15796-DEPLOYMENT.TRIAL-5X73V4.TRIAL.EXPIRES.27.MAY.2024"

# Load existing workbook
workbook = WorkBook.Load("test_excel.xlsx")
from ironxl import *  # Import entire module from ironxl for Excel operations

# Set license key for IronXL (Replace the license key with an actual valid key)
License.LicenseKey = "IRONSUITE.XYZ.ABC.COM.15796-DEPLOYMENT.TRIAL-5X73V4.TRIAL.EXPIRES.27.MAY.2024"

# Load existing workbook
workbook = WorkBook.Load("test_excel.xlsx")
PYTHON

Le code Python ci-dessus illustre l'utilisation d'IronXL, une bibliothèque permettant de travailler avec des fichiers Excel. Après avoir importé le module nécessaire depuis IronXL, une clé de licence est fournie pour authentifier l'utilisation de la bibliothèque. Vous pouvez acheter votre clé de licence gratuite sur la licence d'essai IronXL. La méthode Load est ensuite utilisée pour ouvrir un classeur Excel nommé " test_excel.xlsx ". Ce classeur peut contenir différentes feuilles de calcul avec des données ou une mise en forme. En l'intégrant au script, vous obtenez la possibilité de manipuler son contenu par programmation. Cela inclut des tâches telles que la lecture de données, la modification des valeurs des cellules ou la création de feuilles entièrement nouvelles. La bibliothèque prend en charge différents formats de fichiers, notamment XLSX, XLS, XLSM, XLTX, CSV et TSV, ce qui la rend polyvalente pour gérer différents types de fichiers Excel de manière transparente.

Sélectionner une feuille de calcul Excel

L'étape suivante consiste à sélectionner la feuille de calcul sur laquelle nous voulons travailler. Le code suivant spécifiera la feuille de calcul Excel.

# Select worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Select worksheet at index 0
worksheet = workbook.WorkSheets[0]
PYTHON

La ligne ci-dessus sélectionne la feuille de calcul à l'index 0 du classeur Excel chargé et l'affecte à la variable worksheet . Dans Excel, les feuilles de calcul sont des onglets individuels au sein d'un classeur, permettant d'organiser et de manipuler des données. En référençant la feuille de calcul à l'index 0, vous accédez à la première feuille de calcul du classeur, car l'indexation en Python commence généralement à 0. Cela vous permet d'effectuer des opérations spécifiques à cette feuille, telles que la lecture de données, la modification des valeurs des cellules ou l'application d'une mise en forme.

Fusionner des cellules spécifiques dans un fichier Excel

Maintenant que nous avons chargé le classeur et sélectionné la feuille de calcul, définissons la plage de cellules spécifique à fusionner. Dans la feuille de calcul sélectionnée, il y a une colonne contenant les noms des pays. Pour certains clients, la valeur du pays est la même, par exemple " États-Unis ". Nous fusionnerons les cellules dans Excel pour ces cas précis. Le code suivant effectuera des opérations de fusion pour une plage particulière.

# Merge cells within specified ranges
worksheet.Merge("E5:E7")
worksheet.Merge("E9:E10")

# Save workbook to retain changes
workbook.Save()
# Merge cells within specified ranges
worksheet.Merge("E5:E7")
worksheet.Merge("E9:E10")

# Save workbook to retain changes
workbook.Save()
PYTHON

Ces lignes de code utilisent la méthode Merge pour combiner les cellules de la feuille de calcul sélectionnée. La première ligne fusionne les cellules de la plage E5 à E7, probablement pour consolider les données relatives aux " États-Unis " dans la colonne pays. De même, la deuxième ligne fusionne les cellules de E9 à E10, pour un autre ensemble d'entrées de données avec la même valeur de pays. Après la fusion, la méthode Save est appelée pour enregistrer les modifications apportées au classeur. Cette action garantit que les cellules fusionnées sont conservées dans le fichier Excel.

La méthode Merge est utilisée pour fusionner une plage de cellules. Cette action combine les cellules sans effacer les valeurs ou données existantes. Toutefois, seule la valeur de la première cellule de la zone de cellules fusionnées sera affichée. Néanmoins, les valeurs des cellules fusionnées restent accessibles dans IronXL.

Les cellules fusionnées sont visibles dans le résultat fourni.

Comment fusionner des cellules dans un fichier Excel avec Python : Figure 2 - Fusion de cellules Excel avec Python

Récupérer les régions fusionnées

Dans Excel, les régions fusionnées désignent des blocs contigus de cellules fusionnées qui ont été combinées en une seule cellule. La récupération programmatique des régions fusionnées permet l'identification et la gestion de ces zones au sein d'une feuille de calcul. Ces informations sont utiles pour diverses tâches telles que l'analyse de données, les ajustements de formatage ou la garantie d'une manipulation précise des données dans les cellules fusionnées. Le code suivant permettra de récupérer les régions fusionnées à partir d'une feuille de calcul Excel.

# Print merged regions in the worksheet
print("Merged Regions are:")
retrieveMergedRegions = worksheet.GetMergedRegions()
for mergedRegion in retrieveMergedRegions:
    print(mergedRegion.RangeAddressAsString)
# Print merged regions in the worksheet
print("Merged Regions are:")
retrieveMergedRegions = worksheet.GetMergedRegions()
for mergedRegion in retrieveMergedRegions:
    print(mergedRegion.RangeAddressAsString)
PYTHON

Le code ci-dessus affiche d'abord un en-tête indiquant le début de la sortie relative aux régions fusionnées. Il récupère ensuite toutes les régions fusionnées de la feuille de calcul spécifiée à l'aide de la méthode GetMergedRegions() et itère sur chaque région fusionnée. À l'intérieur de la boucle, il imprime l'adresse de chaque région fusionnée sous forme de chaîne de caractères à l'aide RangeAddressAsString . Cela fournit une liste claire de toutes les régions fusionnées dans la feuille de calcul, facilitant des tâches telles que l'identification des zones fusionnées pour l'analyse des données, les ajustements de mise en forme ou les opérations ciblées dans le fichier Excel.

Les cellules précédemment fusionnées sont :

Comment fusionner des cellules dans un fichier Excel avec Python : Figure 3 - Résultat de la fusion

Dissocier les cellules dans un fichier Excel

Dissocier des cellules dans un fichier Excel consiste à inverser le processus de fusion et de séparation des cellules précédemment combinées en cellules individuelles. Pour dissocier des cellules dans un fichier Excel à l'aide d'IronXL, vous pouvez utiliser la méthode Unmerge. Voici comment vous pouvez le faire :

# Unmerge cells within specified ranges
worksheet.Unmerge("E5:E7")
worksheet.Unmerge("E9:E10")

# Save workbook to retain changes
workbook.Save()
# Unmerge cells within specified ranges
worksheet.Unmerge("E5:E7")
worksheet.Unmerge("E9:E10")

# Save workbook to retain changes
workbook.Save()
PYTHON

Dans l'extrait de code ci-dessus, la méthode Unmerge est utilisée pour dissocier les cellules des plages spécifiées, en ciblant plus précisément les plages E5:E7 et E9:E10. Cette action restaure l'individualité des cellules au sein de ces plages, permettant ainsi de manipuler indépendamment leur contenu. Enfin, la méthode Save est appelée pour garantir que les modifications sont prises en compte et enregistrées dans le classeur Excel.

Comment fusionner des cellules dans un fichier Excel avec Python : Figure 4 - Fichier de résultat de la fusion

Conclusion

En conclusion, Python, associé à IronXL, simplifie la tâche de fusion de cellules dans Excel, améliorant ainsi l'organisation et la visualisation des données. Les capacités étendues, les nombreuses fonctionnalités et l'interface conviviale d'IronXL permettent aux utilisateurs de manipuler facilement les fichiers Excel, du chargement des classeurs à la fusion programmatique de plages de cellules spécifiques. Avec une version d'essai gratuite disponible pour la découverte du logiciel et une option de licence complète, IronXL offre une solution convaincante aux professionnels recherchant une gestion efficace des données dans les applications Python.

Questions Fréquemment Posées

Comment puis-je fusionner des cellules dans Excel en utilisant Python ?

Vous pouvez fusionner des cellules dans Excel avec Python en utilisant la bibliothèque IronXL en chargeant un classeur et une feuille de calcul, puis en appliquant la fonction Merge à la plage de cellules souhaitée, telle que worksheet.Merge('A1:B2').

Est-il possible de dissocier des cellules dans Excel en utilisant Python ?

Oui, avec IronXL, vous pouvez dissocier des cellules dans Excel en utilisant Python en appliquant la méthode Unmerge à la plage de cellules spécifiée, telle que worksheet.Unmerge('A1:B2').

Quelles étapes sont impliquées pour fusionner des cellules avec IronXL ?

Pour fusionner des cellules à l'aide de IronXL, installez d'abord la bibliothèque, chargez votre classeur Excel, sélectionnez la feuille de calcul, et appliquez la fonction Merge à la plage de cellules spécifique que vous souhaitez combiner.

IronXL peut-il identifier les régions de cellules fusionnées dans une feuille Excel ?

Oui, IronXL peut identifier les régions de cellules fusionnées à l'aide de la méthode GetMergedRegions(), qui fournit une liste des zones fusionnées au sein d'une feuille de calcul.

Quels avantages IronXL offre-t-il pour la manipulation de fichiers Excel en Python ?

IronXL offre des avantages tels que la compatibilité multiplateforme, la prise en charge de divers formats Excel, une API intuitive pour lire et écrire des données, styliser les cellules et effectuer des calculs avec des formules.

Comment installer IronXL pour l'utiliser dans un projet Python ?

Vous pouvez installer IronXL dans votre projet Python en utilisant la commande pip : pip install ironxl.

IronXL prend-il en charge plusieurs formats de fichiers Excel ?

Oui, IronXL prend en charge plusieurs formats de fichiers Excel, y compris XLSX, XLS, XLSM, XLTX, CSV et TSV, le rendant polyvalent pour différents besoins de gestion des données.

Puis-je essayer IronXL avant d'acheter une licence ?

Oui, IronXL offre un essai gratuit qui permet aux utilisateurs d'explorer ses fonctionnalités et capacités avant de s'engager dans une option de licence.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite