有没有一种方法可以获取实际值,而不是使用openpyxl库打印出的单元格公式?
根据stackoverflow我了解了很多,openpyxl库没有提供此选项,这很不好。 我在这里找到的唯一解决方案是手动打开excel文件并将公式另存为硬编码值。 我正在尝试使流程自动化,并且不想手动执行任何操作。
import openpyxl
template = openpyxl.load_workbook('import_spendesk_datev.xlsx') #Add file name
temp_sheet = template['Import']
print(temp_sheet.cell(row=2,column=13).internal_value)
我希望我可以打印出单元格的实际值,而不是公式。
非常感谢您的帮助。也许是另一个用于操纵excel的python库提供了此功能?
答案 0 :(得分:1)
您可以尝试xlrd
。
我在使用公式RANDBETWEEN的excel工作簿中有一个值:
获取值的代码:
import xlrd
from xlrd import open_workbook, cellname
book = open_workbook(r'path_to_excel\test.xlsx')
sheet = book.sheet_by_name("Sheet1")
print(sheet.cell(0,0).value)
65.0