¿Cómo puedo ver las fórmulas de una hoja de cálculo de Excel en pandas/python?
python-3.x xlsx (2)
En realidad, es factible. Actualmente tienes algo como esto
import pandas as pd
import numpy as np
a2_value = "=A1"
data = [1, "=A1", 3, 4]
s = pd.Series(list(data))
writer = pd.ExcelWriter(''output.xlsx'')
s.to_excel(writer, ''Sheet1'', header=False, index=False)
writer.save()
Lo que puedes hacer es en realidad esto:
import pandas as pd
import numpy as np
data = [1, ''=CONCATENATE("=A1", '''')'', 3, 4]
s = pd.Series(list(data))
writer = pd.ExcelWriter(''output.xlsx'')
s.to_excel(writer, ''Sheet1'', header=False, index=False)
writer.save()
Esa también es la fórmula, pero = A1 será visible en lugar de su valor.
Me gustaría leer una hoja de cálculo de Excel para python / pandas, pero tener las fórmulas en lugar de los resultados de la celda.
Por ejemplo, si la celda A1 es 25 y la celda B1 es = A1, me gustaría que mi marco de datos muestre:
25 =A1
En este momento se muestra:
25 25
¿Como lo puedo hacer?
OpenPyXL
proporciona esta capacidad
OpenPyXL
para
OpenPyXL
.
Mira
here
y
here
.
Un ejemplo:
from openpyxl import load_workbook
import pandas as pd
wb = load_workbook(filename = ''empty_book.xlsx'')
sheet_names = wb.get_sheet_names()
name = sheet_names[0]
sheet_ranges = wb[name]
df = pd.DataFrame(sheet_ranges.values)