Leia arquivos Excel com Python

2023-12-28 02:49:37

Arquivos Excel (planilhas) são usados por pessoas em todo o mundo para organizar, analisar e armazenar dados tabulares. Devido à sua popularidade, os desenvolvedores frequentemente encontram situações em que precisam extrair dados do Excel ou criar relatórios no formato Excel. Ser capaz de leia arquivos Excel com Python abre um conjunto abrangente de possibilidades para processamento e automação de dados. Neste artigo você aprenderá como ler dados (valores de texto ou números) de uma célula, um intervalo de células ou uma planilha inteira usando a biblioteca Spire.XLS for Python.

Biblioteca Python para leitura do Excel

Spire.XLS for Python é uma biblioteca Python confiável de nível empresarial para criar, escrever, ler e editando Excel documentos (XLS, XLSX, XLSB, XLSM, ODS) em um aplicativo Python. Ele fornece um conjunto abrangente de interfaces, classes e propriedades que permitem aos programadores ler e escrever Excel arquivos com facilidade. Especificamente, uma célula em uma pasta de trabalho pode ser acessada usando a propriedade Worksheet.Range e o valor da célula pode ser obtido usando a propriedade CellRange.Value.

A biblioteca é fácil de instalar executando o seguinte comando pip. Se você quiser importar manualmente as dependências necessárias, consulte Como instalar Spire.XLS for Python no código VS

pip install Spire.XLS

Classes e propriedades em Spire.XLS para API Python

  • Classe de pasta de trabalho: representa um modelo de pasta de trabalho do Excel, que você pode usar para criar uma pasta de trabalho do zero ou carregar um documento Excel existente e fazer modificações nele.
  • Classe de planilha: representa uma planilha em uma pasta de trabalho.
  • Classe CellRange: representa uma célula específica ou um intervalo de células em uma pasta de trabalho.
  • Propriedade Worksheet.Range: Obtém uma célula ou intervalo e retorna um objeto da classe CellRange.
  • Propriedade Worksheet.AllocatedRange: Obtém o intervalo de células que contém os dados e retorna um objeto da classe CellRange.
  • Propriedade CellRange.Value: Obtém o valor numérico ou valor de texto de uma célula. Mas se uma célula tiver uma fórmula, esta propriedade retornará a fórmula em vez do resultado da fórmula.

Leia os dados de uma célula específica em Python

Com Spire.XLS for Python, você pode obter facilmente o valor de uma determinada célula usando a propriedade CellRange.Value. As etapas para ler dados de uma célula específica do Excel em Python são as seguintes.

  • Instanciar classe de pasta de trabalho
  • Carregue um documento Excel usando o método LoadFromFile.
  • Obtenha uma planilha específica usando a propriedade Workbook.Worksheets[index].
  • Obtenha uma célula específica usando a propriedade Worksheet.Range.
  • Obtenha o valor da célula usando a propriedade 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

Ler dados de um intervalo de células em Python

Já sabemos como obter o valor de uma célula, para obter os valores de um intervalo de células, como certas linhas ou colunas, só precisamos usar instruções de loop para iterar pelas células e depois extraí-las uma por uma. As etapas para ler dados de um intervalo de células do Excel em Python são as seguintes.

  • Instanciar classe de pasta de trabalho
  • Carregue um documento Excel usando o método LoadFromFile.
  • Obtenha uma planilha específica usando a propriedade Workbook.Worksheets[index].
  • Obtenha um intervalo de células específico usando a propriedade Worksheet.Range.
  • Use instruções de loop for para recuperar cada célula no intervalo e obter o valor de uma célula específica usando a propriedade 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

Leia dados de uma planilha do Excel em Python

Spire.XLS for Python oferece a propriedade Worksheet.AllocatedRange para obter automaticamente o intervalo de células que contém dados de uma planilha. Em seguida, percorremos as células dentro do intervalo de células, em vez de toda a planilha, e recuperamos os valores das células um por um. A seguir estão as etapas para ler dados de uma planilha do Excel em Python.

  • Instanciar classe de pasta de trabalho.
  • Carregue um documento Excel usando o método LoadFromFile.
  • Obtenha uma planilha específica usando a propriedade Workbook.Worksheets[index].
  • Obtenha o intervalo de células que contém dados da planilha usando a propriedade Worksheet.AllocatedRange.
  • Use instruções de loop for para recuperar cada célula no intervalo e obter o valor de uma célula específica usando a propriedade 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

Leia o valor em vez da fórmula em uma célula em Python

Conforme mencionado anteriormente, quando uma célula contém uma fórmula, a propriedade CellRange.Value retorna a própria fórmula, não o valor da fórmula. Se quisermos obter o valor, precisamos usar o método str(CellRange.FormulaValue). A seguir estão as etapas para ler o valor em vez da fórmula em uma célula do Excel em Python.

  • Instanciar classe de pasta de trabalho.
  • Carregue um documento Excel usando o método LoadFromFile.
  • Obtenha uma planilha específica usando a propriedade Workbook.Worksheets[index].
  • Obtenha uma célula específica usando a propriedade Worksheet.Range.
  • Determine se a célula possui fórmula usando a propriedade CellRange.HasFormula.
  • Obtenha o valor da fórmula da célula usando o método 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

Conclusão

Nesta postagem do blog, aprendemos como ler dados de células, regiões de células e planilhas em Python com a ajuda do Spire.XLS para API Python. Também discutimos como determinar se uma célula possui uma fórmula e como obter o valor da fórmula. Esta biblioteca suporta a extração de muitos outros elementos no Excel, como imagens, hiperlinks e objetos OEL. Confira nossa documentação online para mais tutoriais. Se você tiver alguma dúvida, entre em contato conosco por e-mail ou no fórum.

Veja também