COMPARAISON AVEC D'AUTRES COMPOSANTS

Comparaison entre IronXL for Python et IronXL Python

Publié juin 6, 2024
Partager:

Dans cet article, nous allons aborder deux bibliothèques Python largement utilisées pour la gestion des fichiers de feuilles de calcul Excel : IronXL et OpenPyXL. Ces bibliothèques sont importantes pour les développeurs Python qui ont besoin de manipuler, d'analyser ou de créer des documents de fichiers Excel. Chaque bibliothèque offre des caractéristiques uniques pour faciliter la manipulation des fichiers Excel de manière plus efficace et efficiente.

IronXL et OpenPyXL offrent aux développeurs la possibilité d'automatiser les opérations sur les feuilles de calcul, de modifier les cellules des feuilles Excel et d'extraire des échantillons de données. Ils prennent également en charge des fonctions avancées telles que la création de formules, le stylisme des cellules et la gestion transparente d'ensembles de données volumineux. Les applications peuvent ainsi gérer efficacement les fichiers Excel dans différents environnements sans compromettre les performances ou la compatibilité.

Dans cette comparaison, nous explorerons les caractéristiques uniques de chaque bibliothèque et leur fonctionnement. Nous aborderons également les détails de leur licence. Examinons les différences et les capacités d'IronXL et d'OpenPyXL, en nous concentrant sur des informations claires et utiles pour les développeurs.

1. Bibliothèque OpenPyXL

OpenPyXL est une bibliothèque Python conçue pour traiter les fichiers Excel au format XLSX. La bibliothèque permet aux développeurs de lire, écrire et modifier des fichiers Excel. Le module OpenPyXL prend en charge un grand nombre de fonctionnalités d'Excel, notamment la manipulation de données, le formatage et des fonctions avancées telles que les graphiques et les tableaux croisés dynamiques.

1.1 Caractéristiques principales d'OpenPyXL

1.1.1 Gestion des feuilles de calcul

OpenPyXL excelle dans la création et l'édition de classeurs. Il vous permet de commencer avec un classeur vierge ou de modifier un classeur existant, d'ajouter ou de supprimer des feuilles et de naviguer facilement entre les feuilles. Il est donc parfait pour les tâches allant de la génération de rapports à l'automatisation de la saisie de données.

1.1.2 Manipulation des données

Cette bibliothèque offre des possibilités avancées de traitement des données, telles que l'ajout de lignes, l'insertion de formules et l'application de styles à la feuille active. Vous pouvez manipuler de grands ensembles de données en définissant les valeurs des cellules par programme, ce qui simplifie les tâches telles que l'analyse des données et la génération de rapports.

1.1.3 Style et formatage

Avec OpenPyXL, vous pouvez appliquer un formatage de cellule tel que des polices, des couleurs et des bordures. Il prend également en charge la mise en forme conditionnelle et la définition des propriétés des cellules, telles que l'alignement, qui sont essentielles pour créer des rapports Excel de qualité professionnelle.

1.1.4 Graphiques et images

OpenPyXL permet d'ajouter des éléments graphiques aux feuilles de calcul. Vous pouvez insérer des graphiques pour visualiser les données et même ajouter des images pour améliorer la présentation des informations. Cette fonction est particulièrement utile pour créer des tableaux de bord et des rapports complexes.

1.1.5 Intégration des formules et des fonctions

La bibliothèque permet d'intégrer des formules Excel dans les cellules, ce qui permet d'effectuer des calculs automatisés dans les feuilles de calcul. Il permet également de créer des plages nommées, ce qui peut s'avérer très pratique pour organiser les données et créer des feuilles plus lisibles et plus faciles à gérer.

1.1.6 Validation et automatisation des données

OpenPyXL fournit des outils de validation et de tri des données, qui sont essentiels pour maintenir l'intégrité des données et organiser l'information de manière efficace. Il offre également des fonctions de filtrage des données, ce qui facilite la gestion de grands volumes de données dans les fichiers Excel.

1.1.7 Source ouverte

En tant que bibliothèque open-source, OpenPyXL bénéficie des contributions permanentes d'une communauté dynamique, ce qui lui permet de rester pertinente et riche en fonctionnalités. Cette implication de la communauté fournit un vaste réservoir de ressources et de soutien aux développeurs qui utilisent la bibliothèque.

2. Bibliothèque IronXL

IronXL est une bibliothèque Python robuste conçue pour manipuler des fichiers Excel sans avoir besoin de Microsoft Excel. Il est apprécié pour sa simplicité et son efficacité dans la gestion de diverses tâches Excel directement au sein des environnements Python.

2.1 Principales caractéristiques d'IronXL

2.1.1 Gestion du cahier de travail

IronXL simplifie la la création, le chargement et l'enregistrement de formats Excel comme XLS, XLSX et CSV, entre autres. Il garantit la compatibilité avec les différentes versions d'Excel et offre des fonctionnalités complètes pour la gestion programmatique des données Excel.

2.1.2 Manipulation des données

Avec IronXL, vous pouvez trier efficacement les données, gérer les lignes et les colonneset de personnaliser la mise en forme des cellules. Il s'agit notamment de définir des types de données, des formules et même de mettre en œuvre des fonctions Excel dans les cellules.

2.1.3 Formatage avancé

IronXL permet d'effectuer de nombreuses options de style pour les cellulesy compris la définition des polices, des bordures et des couleurs d'arrière-plan. Il prend en charge des fonctions Excel avancées telles que le formatage conditionnel et la définition d'options d'impression pour les feuilles de calcul, améliorant ainsi la lisibilité et la présentation de vos rapports Excel.

2.1.4 Caractéristiques de sécurité

La bibliothèque permet de modifier les métadonnées, de gérer les autorisations et de protéger les fichiers par un mot de passe, ce qui garantit la protection des données sensibles.

2.1.5 Support multiplateforme

IronXL est conçu pour fonctionner sur plusieurs systèmes d'exploitation, notamment Windows, macOS et Linux, ce qui garantit que les développeurs peuvent déployer leurs applications sur diverses plateformes sans problème de compatibilité.

2.1.6 Opérations sur les feuilles et les cellules

IronXL offre des fonctions robustes pour le traitement des plages de feuilles et des cellules individuelles. Vous pouvez facilement fusionner, copier et manipuler des plages de cellules. Cette capacité simplifie la gestion d'ensembles de données complexes.

2.1.7 Intégration avec les systèmes de données

IronXL s'intègre de manière transparente aux bases de données et aux sources de données. Il prend en charge l'importation et l'exportation de données vers et depuis des fichiers Excel. Cette fonction est essentielle pour les applications qui nécessitent des rapports et des analyses de données dynamiques.

3. Mise en place d'un projet dans Visual Studio Code

Pour commencer à tester les bibliothèques IronXL et OpenPyXL, nous devons mettre en place un projet dans Visual Studio Code, spécialement conçu pour le développement Python.

3.1 Conditions préalables

Avant de commencer, assurez-vous que Visual Studio Code est installé sur votre ordinateur. Il est également nécessaire d'avoir installé Python, ainsi que l'extension Python pour Visual Studio Code. Cette extension peut être ajoutée directement à partir de la vue Extensions dans Visual Studio Code.

3.2 Configuration du projet

Commencez par créer un nouveau dossier sur votre système, qui servira d'espace de travail pour votre projet. Vous pouvez le faire facilement en utilisant l'option Ouvrir un dossier dans le menu Fichier de VS Code.

3.3 Configuration de l'environnement

Dans Visual Studio Code, il est conseillé de mettre en place un environnement virtuel pour gérer proprement les dépendances. Vous pouvez le faire en utilisant le terminal intégré dans Visual Studio Code. Visual Studio Code fournit également une interface dans l'extension Python pour simplifier ce processus. Grâce à la palette de commandes de l'extension Python, vous pouvez créer et activer un environnement virtuel sans avoir à taper les commandes manuellement.

Appuyez sur Ctrl+Shft+P dans VS Code pour rechercher "Python : Create Environment" et cliquez dessus.

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 1 - Configuration de l'environnement

Sélectionnez un type d'environnement dans la liste déroulante. Dans notre cas, ce sera ".venv" :

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 2 - .venv

Sélectionnez ensuite le chemin d'accès à l'interpréteur Python :

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 3 - Chemin de l'interprète

Il créera l'environnement virtuel Python à l'intérieur du dossier.

Comparaison entre IronXL for Python et IronXL Python : Figure 4 - Environnement virtuel

4. Installer la bibliothèque IronXL for Python

L'installation de la bibliothèque IronXL dans Visual Studio Code est un processus simple. IronXL est particulièrement utile car il ne nécessite pas l'installation de Microsoft Office, fonctionnant plutôt sur le cadre .NET.

4.1 Conditions préalables

Avant l'installation d'IronXL, assurez-vous que votre environnement est déjà configuré avec Python et Visual Studio Code. Il est important que le runtime .NET 6.0 soit installé sur votre machine, car IronXL s'appuie sur les technologies .NET pour fonctionner. Pour les systèmes qui ne sont pas déjà équipés de .NET, comme Linux ou macOS, vous devrez peut-être le télécharger à partir du site officiel de .NET.

4.2 Etapes de l'installation

Pour installer IronXL, utilisez le gestionnaire de paquets pip, qui simplifie l'installation des bibliothèques Python. Suivez ces étapes dans le terminal de Visual Studio Code :

  1. Ouvrez le terminal : Accédez au terminal dans Visual Studio Code en utilisant le raccourci Ctrl+ ou en naviguant vers Terminal > Nouveau terminal dans le menu supérieur.
    1. Exécutez la commande Pip Install : Dans le terminal, tapez la commande suivante et appuyez sur Entrée :
  pip install IronXL

La commande de code ci-dessus téléchargera et installera la bibliothèque IronXL ainsi que toutes les dépendances nécessaires à son fonctionnement.

Une comparaison entre OpenXL Python et IronXL Python : Figure 5 - IronXL

  1. Confirmer l'installation : Une fois le processus d'installation terminé, vous pouvez vérifier qu'IronXL est installé correctement en tentant de l'importer dans un nouveau script Python :
from ironxl import *
PYTHON

Si aucune erreur n'apparaît, la bibliothèque est installée avec succès et prête à être utilisée.

4.3 Considérations supplémentaires

Lors de l'installation d'IronXL, si vous rencontrez des problèmes liés aux dépendances ou à la compatibilité avec .NET, assurez-vous que toutes les exigences du système sont satisfaites, comme indiqué dans la documentation d'IronXL. Il peut être nécessaire d'ajuster les chemins d'accès au système ou d'installer des bibliothèques de support supplémentaires en fonction de votre système d'exploitation.

En suivant ces instructions, IronXL sera installé dans votre environnement Python dans Visual Studio Code, préparant le terrain pour des capacités améliorées de manipulation de fichiers Excel et de traitement de données dans vos projets Python.

5. Installer la bibliothèque OpenPyXL Python

5.1 Installation d'OpenPyXL

L'installation d'OpenPyXL peut se faire à l'aide de pip, l'installateur de paquets de Python. Il est recommandé d'installer cette bibliothèque dans un environnement virtuel afin d'éviter les conflits avec d'autres projets Python ou des paquets système.

  1. Utiliser pip pour installer OpenPyXL : Ouvrez votre interface de ligne de commande (CLI) dans Visual Studio Code ou dans l'environnement de votre choix où votre environnement Python est actif. Entrez la commande suivante :
pip install openpyxl
PYTHON

Cette commande télécharge et installe la bibliothèque OpenPyXL ainsi que toutes les dépendances nécessaires.

Comparaison entre OpenpyXL Python et IronXL Python : Figure 6 - OpenPyXL

  1. Dépendances optionnelles : Pour une utilisation avancée, telle que l'inclusion d'images ou le traitement de fichiers volumineux, OpenPyXL suggère d'installer des bibliothèques supplémentaires telles que lxml et Pillow. Pour les installer, utilisez :
pip install lxml pillow
PYTHON

5.2 Vérification de l'installation

Après l'installation, vous pouvez vérifier que OpenPyXL est correctement installé en essayant d'importer le module OpenPyXL dans votre script Python :

from openpyxl import Workbook // openpyxl import workbook
wb = Workbook()
PYTHON

Si le code ci-dessus s'exécute sans erreur, OpenpyXL est prêt à être utilisé dans vos projets. En suivant ces étapes, vous pouvez facilement configurer OpenPyXL et commencer à automatiser les opérations sur les fichiers Excel dans vos applications Python.

6. Comparaison des fonctionnalités avancées d'IronXL et d'OpenPyXL

6.1 Les caractéristiques avancées d'IronXL

IronXL est une bibliothèque Python complète conçue pour améliorer la manipulation des fichiers Excel. Cet outil simplifie le processus de création, d'édition et de gestion des fichiers Excel au sein des applications Python, en offrant une gamme de fonctionnalités qui répondent à différents besoins, des opérations de base sur les feuilles de calcul à la manipulation avancée des données.

6.1.1 Importation et exportation de données

IronXL excelle dans le traitement de différents formats Excel, notamment XLS, XLSX et CSV. Les utilisateurs peuvent facilement importer des échantillons de données à partir de ces formats ou exporter des feuilles de travail vers ces formats, ce qui facilite l'échange de données et les solutions de reporting. Vous pouvez également sélectionner la feuille active pour travailler sur une feuille spécifique.

from ironxl import *      workbook = WorkBook.Load("sample.csv")
 workbook2 = WorkBook.Load("sample.xlsx")
 workbook3 = WorkBook.Load("sample.xls")
PYTHON

6.1.2 Formule et support de calcul

La bibliothèque soutient Formules Excelpermettant d'effectuer des calculs dans la feuille Excel. Chaque fois qu'une feuille est modifiée, les formules sont automatiquement recalculées, ce qui garantit la cohérence et la précision des données.

from ironxl import *     
# Create a new Excel workbook
new_workbook = WorkBook()
# Add a worksheet to the workbook
new_worksheet = new_workbook.CreateWorkSheet("NewSheet")
# Set new formulas with different logic
new_worksheet["A1"].Formula = "Average(D1:D5)"
new_worksheet["D1"] = 10
new_worksheet["D2"] = 20
new_worksheet["D3"] = 30
new_worksheet["D4"] = 40
new_worksheet["D5"] = 50
new_worksheet["B1"].Formula = "=D3*D4"
new_worksheet["C1"].Formula = "Min(D1:D5)"
# Force recalculate all formulas in the workbook
new_workbook.EvaluateAll()
# Get the calculated values for each formula
average_value = new_worksheet["A1"].ToArray()[0].FormattedCellValue
product_value = new_worksheet["B1"].ToArray()[0].FormattedCellValue
min_value = new_worksheet["C1"].ToArray()[0].FormattedCellValue
# Save the new workbook to a file with updated formulas and calculated values
new_workbook.SaveAs("sample.xlsx")
PYTHON

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 7 - Ecriture de données à l'aide d'une formule

6.1.3 Formatage avancé des cellules

IronXL offre de nombreuses options de formatage des cellules. Les utilisateurs peuvent ajuster les polices, les tailles, les arrière-plans, les bordures et l'alignement directement dans une feuille de calcul Excel par le biais d'un code. Cette fonction permet de préparer des présentations de données et des rapports qui requièrent des règles stylistiques spécifiques.

from ironxl import *     License.LicenseKey = "License Code";
workbook = WorkBook()
new_worksheet = workbook.CreateWorkSheet("FinanceData")
selected_range = new_worksheet["B2:B6"]
new_worksheet["B2"].Value = "Revenue"
new_worksheet["B3"].Value = 150000
new_worksheet["B4"].Value = 200000
new_worksheet["B5"].Value = 180000
new_worksheet["B6"].Value = 220000
selected_range.Style.SetBackgroundColor("#4CAF50")
selected_range.Style.Font.Underline = FontUnderlineType.Single
selected_range.Style.Font.Strikeout = False
selected_range.Style.Font.Bold = True
selected_range.Style.Font.Italic = False
selected_range.Style.TopBorder.Type = BorderType.Thin
selected_range.Style.BottomBorder.Type = BorderType.Thin
selected_range.Style.LeftBorder.Type = BorderType.Thin
selected_range.Style.RightBorder.Type = BorderType.Thin
selected_range.Style.TopBorder.SetColor("#000000")
selected_range.Style.BottomBorder.SetColor("#000000")
selected_range.Style.LeftBorder.SetColor("#000000")
selected_range.Style.RightBorder.SetColor("#000000")
selected_range.Style.VerticalAlignment = VerticalAlignment.Center
selected_range.Style.HorizontalAlignment = HorizontalAlignment.Center
selected_range.Style.FillPattern = FillPattern.LessDots
selected_range.Style.Indention = 0
selected_range.Style.WrapText = True
# Save the new workbook to a file with updated formulas and calculated values
workbook.SaveAs("styled.xlsx")
PYTHON

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 8 - Formatage des cellules

6.1.4 Validation et tri des données

Pour améliorer l'intégrité des données, IronXL comprend des fonctions de validation des données. Il offre également de solides capacités de tri pour les plages, les colonnes et les lignes, ce qui facilite l'organisation et l'analyse de grands ensembles de données.

6.1.5 Sécurité des documents

Caractéristiques de sécurité d'IronXL comprennent la possibilité de crypter et de décrypter les fichiers Excel. Les informations sensibles sont ainsi protégées et ne sont accessibles qu'aux utilisateurs autorisés.

from ironxl import *     
# Load a different Excel workbook
workbook = WorkBook.Load("data_file.xlsx")
worksheet = workbook.DefaultWorkSheet
# Open a different protected spreadsheet file
protected_workbook = WorkBook.Load("protected_data.xlsx", "ExcelSecure")
# Apply encryption to the spreadsheet file
workbook.Encrypt("ExcelSecure")
# Clear any existing password protection
workbook.Password = None
# Save changes to the workbook
workbook.Save()
worksheet.ProtectSheet("SheetSecure")
worksheet.UnprotectSheet()
workbook.Save()
PYTHON

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 9 - Sortie d'un objet du classeur protégé par un mot de passe

6.1.6 Capacités de conversion

IronXL n'est pas limité au traitement des fichiers Excel tels que les fichiers XLSX, XLSM, XLTX, XLTM. Il peut également convertir des documents Excel en formats JSON, XML, HTML ou binaires, ce qui élargit les possibilités d'utilisation des données sur différentes plateformes et dans différents environnements de programmation.

from ironxl import *     
workbook = WorkBook.Create()
worksheet = workbook.CreateWorkSheet("Sheet1")
worksheet["B1"].Value = "Sample Text"
worksheet["B2"].Style.BottomBorder.SetColor("#0077CC")
workbook.SaveAs("output.xls")
workbook.SaveAs("output.xlsx")
workbook.SaveAs("output.tsv")
workbook.SaveAsCsv("output.csv")
workbook.SaveAsJson("output.json")
workbook.SaveAsXml("output.xml")
workbook.ExportToHtml("output.html")
PYTHON

6.1.7 Gestion des feuilles et des cahiers de travail

La bibliothèque simplifie la gestion des classeurs en permettant aux utilisateurs de créer, de charger et de manipuler des classeurs entiers ou des feuilles de calcul individuelles. Il s'agit notamment d'ajouter ou de supprimer des feuilles, ainsi que de définir la visibilité des feuilles et les paramètres d'impression.

from ironxl import *     
# Load the Excel workbook
workbook = WorkBook.Load("sample.xlsx")
# Create a new worksheet
new_worksheet = workbook.CreateWorkSheet("NewSheet")
# Fill data into the new worksheet
for i in range(1, 21):
    new_worksheet[f"A{i}"].Value = f"Data {i}"
    new_worksheet[f"B{i}"].Value = 21 - i
    new_worksheet[f"C{i}"].Value = i % 5
    new_worksheet[f"D{i}"].Value = (i * 3) % 7
# Select a range in the new worksheet
selected_range = new_worksheet["A1:D20"]
# Select column B in the new worksheet
column = new_worksheet.GetColumn(1)
# Sort the range in ascending order based on column A
selected_range.SortAscending()
# Sort the range by column C in ascending order
selected_range.SortByColumn("C", SortOrder.Ascending)
# Sort column B in descending order
column.SortDescending()
# Save the changes
workbook.SaveAs("sortedExcelRange.xlsx")
PYTHON

Une comparaison entre OpenXL Python et IronXL Python : Figure 10 - Sortie de la gestion des feuilles

6.1.8 Insérer de nouvelles lignes et colonnes

IronXL permet aux utilisateurs de dynamiquement insérer de nouvelles lignes et colonnes dans des feuilles de calcul Excel existantes. Cette fonction est particulièrement utile pour modifier les structures de données en fonction de l'évolution des besoins en données sans perturber la présentation générale de la feuille de calcul.

# Add a row before second row
worksheet.InsertRow(1)
# Insert multiple rows before 5th Row
worksheet.InsertRows(4, 4)
# Add a column before column C
worksheet.InsertColumn(2)
# Insert multiple columns before column B
worksheet.InsertColumns(1, 3)
PYTHON

6.1.9 Grouper et dégrouper les lignes et les colonnes

Avec IronXL, les utilisateurs peuvent grouper ou dégrouper des lignes et des colonnes. Cette fonctionnalité améliore l'organisation des données et facilite la navigation et la gestion d'ensembles de données complexes en regroupant et en développant les données selon les besoins.

6.1.10 Répéter les lignes et les colonnes d'Excel

IronXL prend en charge la la répétition des lignes et des colonnes sur plusieurs pages d'un cahier d'exercices. Cette fonction est utile pour créer des en-têtes ou des pieds de page qui doivent apparaître sur chaque page imprimée d'un document Excel, afin d'assurer une présentation et une lisibilité cohérentes.

# Configure rows 2 to 5 to repeat at the top of each printed page
worksheet.SetRepeatingRows(1, 4)
# Configure columns D to F to repeat on the left side of each printed page
worksheet.SetRepeatingColumns(3, 5)
# Insert a page break after column J so that columns A-J appear on the first printed page
worksheet.SetColumnBreak(9)
PYTHON

6.1.11 Copier des feuilles de calcul Excel

Les utilisateurs peuvent dupliquer des feuilles de calcul existantes dans le même classeur à l'aide d'IronXL. Cette fonction permet de gagner du temps lors de la création de plusieurs feuilles partageant un format commun ou lors de la sauvegarde de données importantes. Il est très utile pour la copie de données.

# Duplicate the worksheet to the same workbook
worksheet.CopySheet("Copied Sheet")
# Duplicate the worksheet to another workbook with the specified name
worksheet.CopyTo(second_book, "Copied Sheet")
PYTHON

6.1.12 Ajouter, extraire et supprimer des images de feuilles de calcul

IronXL permet de ajouter des images aux feuilles de travailils peuvent également être utilisés pour extraire des images ou en supprimer. Cela améliore l'attrait visuel des feuilles de calcul et est utile pour les rapports qui contiennent des données graphiques, des logos ou des images didactiques.

6.2 Fonctionnalités avancées d'OpenPyXL

6.2.1 Mise en forme conditionnelle

OpenPyXL permet le formatage conditionnel, ce qui vous permet de modifier le style des cellules en fonction des données qu'elles contiennent. Il peut s'agir de définir des couleurs en fonction de valeurs numériques ou d'appliquer des polices et des styles différents en fonction de conditions spécifiques, ce qui permet d'améliorer la présentation visuelle des données.

from openpyxl import Workbook
from openpyxl.formatting.rule import ColorScaleRule
wb = Workbook()
ws = wb.active
color_scale = ColorScaleRule(start_type='num', start_value=10, start_color='FF0000',
                             end_type='num', end_value=20, end_color='00FF00')
ws.conditional_formatting.add('A1:A10', color_scale)
wb.save('conditional_formatting.xlsx')
PYTHON

6.2.2 Validation des données

Avec OpenPyXL, vous pouvez mettre en œuvre la validation des données pour contrôler le type de données saisies dans les cellules. Il s'agit notamment de définir des listes déroulantes, de limiter les entrées à une certaine plage de dates ou de nombres et de générer des messages d'erreur en cas d'entrées non valides, ce qui contribue à préserver l'intégrité des données.

from openpyxl import Workbook
from openpyxl.worksheet.datavalidation import DataValidation
wb = Workbook()
ws = wb.active
dv = DataValidation(type="list", formula1='"Item1,Item2,Item3"', allow_blank=True)
ws.add_data_validation(dv)
dv.add('A1')
ws['A1'] = 'Item1'
wb.save('data_validation.xlsx')
PYTHON

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 11 - Sortie de la validation des données

6.2.3 Graphiques

La bibliothèque permet de créer et de personnaliser différents types de graphiques tels que les diagrammes linéaires, les diagrammes à barres, les diagrammes circulaires et les diagrammes de dispersion. Cette fonction permet de visualiser les données directement dans les feuilles Excel, ce qui facilite l'analyse des données et l'établissement de rapports. Nous désignons la ligne du graphique et sélectionnons la référence des valeurs à afficher dans le graphique.

from openpyxl import Workbook
from openpyxl.chart import BarChart, Reference
wb = Workbook()
ws = wb.active
for i in range(10):
    ws.append([i])
values = Reference(ws, min_col=1, min_row=1, max_col=1, max_row=10)
chart = BarChart()
chart.add_data(values)
ws.add_chart(chart, "E5")
wb.save("chart.xlsx")
PYTHON

Une comparaison entre OpenpyXL Python et IronXL Python : Figure 12 - Graphique de sortie

6.2.4 Fusionner et défusionner des cellules

OpenPyXL permet de fusionner plusieurs cellules pour créer une seule cellule plus grande, ce qui est souvent utile pour formater les titres ou organiser les données. Il permet également à ces cellules de se défaire ou de se diviser à nouveau en cellules individuelles si nécessaire.

6.2.5 Lire et écrire des commentaires

Vous pouvez lire et écrire des commentaires dans les cellules, ce qui permet d'inclure des notes ou des instructions supplémentaires dans le fichier Excel. Cette fonction est particulièrement utile pour les projets collaboratifs dans lesquels les notes et les directives doivent être partagées entre les utilisateurs.

from openpyxl import Workbook
from openpyxl.comments import Comment
wb = Workbook()
ws = wb.active
comment = Comment(text="This is a comment", author="Author")
ws['A1'].comment = comment
wb.save('comments.xlsx')
PYTHON

6.2.6 Tableaux croisés dynamiques

La bibliothèque permet de créer des tableaux croisés dynamiques à partir des données de vos feuilles de calcul. Cet outil puissant permet de résumer, d'analyser, d'explorer et de présenter vos données de manière exhaustive, ce qui facilite la formulation de conclusions et la prise de décisions éclairées sur la base de vastes ensembles de données.

7. Documentation et assistance

7.1 Documentation et assistance d'IronXL Python

Documentation: IronXL fournit une documentation complète pour les développeurs Python. Il couvre un large éventail de sujets, notamment la lecture, l'écriture et la modification des documents Excel, la gestion des classeurs, le style des cellules et le tri programmatique des données. La documentation est conçue pour être simple, complétée par de nombreux exemples de code pour aider les développeurs à intégrer rapidement les fonctionnalités d'IronXL dans leurs applications.

Support: IronXL offre de solides options de support. Les développeurs peuvent bénéficier d'une assistance par le biais d'une section FAQ complète, d'une documentation détaillée en ligne et d'une assistance directe par courrier électronique. Pour des questions plus complexes ou une assistance immédiate, il est possible de contacter directement l'équipe d'ingénieurs.

7.2 Documentation et support OpenPyXL

**La documentation d'OpenPyXL est complète et bien organisée, offrant aux développeurs des guides sur tout, de la prise en main aux fonctionnalités avancées telles que les graphiques, la validation des données avec message d'erreur, et le formatage conditionnel. La documentation comprend des explications détaillées et des extraits de code qui sont utiles aussi bien pour les nouveaux utilisateurs que pour les utilisateurs expérimentés.

Support: OpenPyXL fournit un support principalement par le biais de forums communautaires et de traqueurs de problèmes sur leurs dépôts officiels. Les développeurs peuvent publier des problèmes et contribuer à la bibliothèque sur GitHub, ce qui en fait un outil collaboratif et en constante évolution.

8. Informations sur la licence

8.1 licence IronXL

IronXL offre plusieurs licence perpétuelle adaptées aux différents besoins des projets, ce qui permet aux développeurs d'utiliser la bibliothèque dans différents environnements sans coûts permanents.

  • License Lite: Au prix de $749, cette option est adaptée à 1 développeur, 1 site et 1 projet. Il comprend une assistance par courrier électronique.
  • Licence Plus: Cette option coûte 1 499 $ et étend la couverture à 3 développeurs, 3 sites et 3 projets. Il comprend une assistance par courrier électronique, une assistance par chat 24/7 et une assistance téléphonique.
  • Licence professionnelle: À 2 999 $, il s'agit de l'offre la plus complète, qui prend en charge 10 développeurs, 10 sites et 10 projets. Elle offre les mêmes options d'assistance que la License Plus, ainsi qu'une assistance par partage d'écran pour une aide plus approfondie.

    Les options supplémentaires comprennent :

  • Couverture de redistribution sans redevance: Nécessaire pour distribuer IronXL au sein de produits logiciels packagés, SaaS et applications OEM. Cette fonction n'est pas disponible pour la licence Lite et doit être achetée avec les licences Plus ou Professionnelle.
  • **Les développeurs peuvent opter pour un support et des mises à jour continus avec une option gratuite d'un an ou un forfait de 5 ans pour 499 $. Cela inclut les mises à jour des fonctions de sécurité et le support direct de l'équipe d'ingénieurs.

    Chaque licence comprend également une garantie de remboursement de 30 jours, permettant aux développeurs de tester IronXL sans risque. Ces conditions de licence font d'IronXL une option flexible pour des projets de tailles et d'envergures diverses, offrant des voies claires pour la mise en œuvre dans différents contextes professionnels.

8.2 Licence OpenPyXL

OpenPyXL est distribué sous la licence MIT, qui est une licence de logiciel libre permissive. Cela signifie qu'il permet une grande liberté d'utilisation, tant pour les logiciels libres que pour les logiciels propriétaires. La licence MIT permet la réutilisation au sein d'un logiciel propriétaire à condition que toutes les copies du logiciel sous licence incluent une copie des termes de la licence MIT et de l'avis de droit d'auteur.

9. Conclusion

Une comparaison entre OpenXL Python et IronXL Python : Figure 13 - Licences

Dans notre examen d'IronXL et d'OpenPyXL, nous avons étudié leurs caractéristiques, leur facilité d'utilisation, leurs options d'assistance et leurs licences. Les deux bibliothèques sont excellentes pour gérer les fichiers Excel, mais elles répondent à des besoins différents.

IronXL se distingue par ses fonctionnalités étendues qui permettent des manipulations complexes d'Excel sans avoir besoin de Microsoft Office. Il offre une documentation détaillée et un support technique solide, ce qui en fait un choix fiable pour les grands projets ou les entreprises. Les data scientists utilisent IronXL à des fins multiples comme la copie de données, le data mining, l'analyse de données et bien d'autres tâches. Les licences IronXL commencent à $749, mais elles incluent un essai gratuit. Cette version d'essai permet aux développeurs de tester pleinement les capacités d'IronXL avant de procéder à un achat, ce qui constitue un avantage majeur pour tout projet sérieux.

OpenPyXL est également puissant, en particulier grâce à ses fonctionnalités Excel avancées, telles que les graphiques linéaires et le formatage conditionnel. Il est disponible sous la licence MIT, qui offre une grande souplesse d'utilisation, tant pour les logiciels libres que pour les applications commerciales. Son soutien est axé sur la communauté, ce qui est génial, mais n'a pas le soutien structuré qu'IronXL fournit.

Si votre projet nécessite des fonctionnalités de haut niveau ainsi qu'une assistance professionnelle et continue, IronXL est le meilleur choix. Il peut être coûteux au départ, mais l'investissement en vaut la peine pour les avantages et la sécurité qu'il offre, en particulier pour les projets complexes ou à long terme.

< PRÉCÉDENT
Meilleure bibliothèque Excel Python (liste pour les développeurs)
SUIVANT >
Alternatives à Pandas Read Excel (sans utiliser l'interopérabilité) | IronXL for Python

Prêt à commencer ? Version : 2024.9 vient de paraître

Téléchargement gratuit de tuyaux Voir les licences > ;