Lire des fichiers Excel avec Python

Lire des fichiers Excel avec Python

2023-12-28 02:44:47

Les fichiers Excel (feuilles de calcul) sont utilisés par des personnes du monde entier pour organiser, analyser et stocker des données tabulaires. En raison de leur popularité, les développeurs sont fréquemment confrontés à des situations dans lesquelles ils doivent extraire des données d'Excel ou créer des rapports au format Excel. Être capable de lire des fichiers Excel avec Python ouvre un ensemble complet de possibilités pour le traitement et l’automatisation des données. Dans cet article, vous apprendrez comment lire des données (valeurs de texte ou numériques) à partir d'une cellule, d'une plage de cellules ou d'une feuille de calcul entière en utilisant la bibliothèque Spire.XLS for Python.

Bibliothèque Python pour lire Excel

Spire.XLS for Python est une bibliothèque Python fiable au niveau de l'entreprise pour créer, écrire, lire et édition d'Excel documents (XLS, XLSX, XLSB, XLSM, ODS) dans une application Python. Il fournit un ensemble complet d'interfaces, de classes et de propriétés qui permettent aux programmeurs de lire et écrire Excel fichiers en toute simplicité. Plus précisément, une cellule d'un classeur est accessible à l'aide de la propriété Worksheet.Range et la valeur de la cellule peut être obtenue à l'aide de la propriété CellRange.Value.

La bibliothèque est facile à installer en exécutant la commande pip suivante. Si vous souhaitez importer manuellement les dépendances nécessaires, reportez-vous à Comment installer Spire.XLS for Python dans VS Code

pip install Spire.XLS

Classes et propriétés dans Spire.XLS pour l'API Python

  • Classe de classeur: représente un modèle de classeur Excel, que vous pouvez utiliser pour créer un classeur à partir de zéro ou charger un document Excel existant et y apporter des modifications.
  • Classe Worksheet: représente une feuille de calcul dans un classeur.
  • Classe CellRange: représente une cellule spécifique ou une plage de cellules dans un classeur.
  • Propriété Worksheet.Range : obtient une cellule ou une plage et renvoie un objet de la classe CellRange.
  • Propriété Worksheet.AllocatedRange: obtient la plage de cellules contenant les données et renvoie un objet de la classe CellRange.
  • Propriété CellRange.Value: obtient la valeur numérique ou la valeur textuelle d'une cellule. Mais si une cellule contient une formule, cette propriété renvoie la formule au lieu du résultat de la formule.

Lire les données d'une cellule particulière en Python

Avec Spire.XLS for Python, vous pouvez facilement obtenir la valeur d'une certaine cellule en utilisant la propriété CellRange.Value. Les étapes pour lire les données d'une cellule Excel particulière en Python sont les suivantes.

  • Instancier la classe Workbook
  • Chargez un document Excel à l'aide de la méthode LoadFromFile.
  • Obtenez une feuille de calcul spécifique à l’aide de la propriété Workbook.Worksheets[index].
  • Obtenez une cellule spécifique à l’aide de la propriété Worksheet.Range.
  • Obtenez la valeur de la cellule à l'aide de la propriété CellRange.Value
  • Python
from spire.xls import *
from spire.xls.common import *

# Create a Workbook object
wb = Workbook()

# Load an Excel file
wb.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Data.xlsx");

# Get a specific worksheet
sheet = wb.Worksheets[0]

# Get a specific cell
certainCell = sheet.Range["D9"]

# Get the value of the cell
print("D9 has the value: " + certainCell.Value)

Read Excel Files with Python

Lire les données d'une plage de cellules en Python

Nous savons déjà comment obtenir la valeur d'une cellule, pour obtenir les valeurs d'une plage de cellules, comme certaines lignes ou colonnes, il suffit d'utiliser des instructions de boucle pour parcourir les cellules, puis de les extraire une par une. Les étapes pour lire les données d'une plage de cellules Excel en Python sont les suivantes.

  • Instancier la classe Workbook.
  • Chargez un document Excel à l'aide de la méthode LoadFromFile.
  • Obtenez une feuille de calcul spécifique à l’aide de la propriété Workbook.Worksheets[index].
  • Obtenez une plage de cellules spécifique à l’aide de la propriété Worksheet.Range.
  • Utilisez les instructions de boucle for pour récupérer chaque cellule de la plage et obtenir la valeur d'une cellule spécifique à l'aide de la propriété CellRange.Value.
  • Python
from spire.xls import *
from spire.xls.common import *

# Create a Workbook object
wb = Workbook()

# Load an existing Excel file
wb.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Data.xlsx");

# Get a specific worksheet
sheet = wb.Worksheets[0]

# Get a cell range
cellRange = sheet.Range["A2:H5"]

# Iterate through the rows
for i in range(len(cellRange.Rows)):

    # Iterate through the columns
    for j in range(len(cellRange.Rows[i].Columns)):

        # Get data of a specific cell
        print(cellRange[i + 2, j + 1].Value + "  ", end='')

    print("")

Read Excel Files with Python

Lire les données d'une feuille de calcul Excel en Python

Spire.XLS for Python propose la propriété Worksheet.AllocatedRange pour obtenir automatiquement la plage de cellules contenant les données d'une feuille de calcul. Ensuite, nous parcourons les cellules de la plage de cellules plutôt que la feuille de calcul entière et récupérons les valeurs des cellules une par une. Voici les étapes pour lire les données d'une feuille de calcul Excel en Python.

  • Instancier la classe Workbook
  • Chargez un document Excel à l'aide de la méthode LoadFromFile.
  • Obtenez une feuille de calcul spécifique à l’aide de la propriété Workbook.Worksheets[index].
  • Obtenez la plage de cellules contenant les données de la feuille de calcul à l’aide de la propriété Worksheet.AllocatedRange.
  • Utilisez les instructions de boucle for pour récupérer chaque cellule de la plage et obtenir la valeur d'une cellule spécifique à l'aide de la propriété CellRange.Value.
  • Python
from spire.xls import *
from spire.xls.common import *

# Create a Workbook object
wb = Workbook()

# Load an existing Excel file
wb.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Data.xlsx");

# Get the first worksheet
sheet = wb.Worksheets[0]

# Get the cell range containing data
locatedRange = sheet.AllocatedRange

# Iterate through the rows
for i in range(len(sheet.Rows)):

    # Iterate through the columns
    for j in range(len(locatedRange.Rows[i].Columns)):

        # Get data of a specific cell
        print(locatedRange[i + 1, j + 1].Value + "  ", end='')

    print("")

Read Excel Files with Python

Lire la valeur plutôt que la formule dans une cellule en Python

Comme mentionné précédemment, lorsqu'une cellule contient une formule, la propriété CellRange.Value renvoie la formule elle-même, et non la valeur de la formule. Si nous voulons obtenir la valeur, nous devons utiliser la méthode str(CellRange.FormulaValue). Voici les étapes pour lire la valeur plutôt que la formule dans une cellule Excel en Python.

  • Instancier la classe Workbook.
  • Chargez un document Excel à l'aide de la méthode LoadFromFile.
  • Obtenez une feuille de calcul spécifique à l’aide de la propriété Workbook.Worksheets[index].
  • Obtenez une cellule spécifique à l’aide de la propriété Worksheet.Range.
  • Déterminez si la cellule a une formule à l’aide de la propriété CellRange.HasFormula.
  • Obtenez la valeur de formule de la cellule à l'aide de la méthode str(CellRange.FormulaValue).
  • Python
from spire.xls import *
from spire.xls.common import *

# Create a Workbook object
wb = Workbook()

# Load an Excel file
wb.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Formula.xlsx");

# Get a specific worksheet
sheet = wb.Worksheets[0]

# Get a specific cell
certainCell = sheet.Range["D4"]

# Determine if the cell has formula
if(certainCell.HasFormula):

    # Get the formula value of the cell
    print(str(certainCell.FormulaValue))

Read Excel Files with Python

Conclusion

Dans cet article de blog, nous avons appris à lire les données de cellules, de régions de cellules et de feuilles de calcul en Python à l'aide de l'API Spire.XLS for Python. Nous avons également expliqué comment déterminer si une cellule contient une formule et comment obtenir la valeur de la formule. Cette bibliothèque prend en charge l'extraction de nombreux autres éléments dans Excel tels que des images, des hyperliens et des objets OEL. Consultez notre documentation en ligne pour plus de tutoriels. Si vous avez des questions, n'hésitez pas à nous contacter par email ou sur le forum.

Voir également