如何使用python的openpyxl模块访问单元格的实际值

如何使用python的openpyxl模块访问单元格的实际值,python,cell,openpyxl,Python,Cell,Openpyxl,我在这方面遇到了真正的问题,因为cell.value函数返回用于单元格的公式,我需要在操作后提取Excel提供的结果 多谢各位 好吧,我想我已经找到了一个解决办法;显然,要访问cell.internal值,您必须使用之前工作表中的iter_rows(),这是一个“RawCell”列表 尝试使用单元格。改为使用内部\u值。从代码看,您似乎正在使用优化的读卡器:read\u only=True。打开工作簿时,可以使用data\u only=True标志在提取公式和结果之间切换 internal_v

我在这方面遇到了真正的问题,因为cell.value函数返回用于单元格的公式,我需要在操作后提取Excel提供的结果

多谢各位


好吧,我想我已经找到了一个解决办法;显然,要访问cell.internal值,您必须使用之前工作表中的iter_rows(),这是一个“RawCell”列表


尝试使用
单元格。改为使用内部\u值。

从代码看,您似乎正在使用优化的读卡器:
read\u only=True
。打开工作簿时,可以使用
data\u only=True
标志在提取公式和结果之间切换


internal_value
是一个私有属性,用于仅引用Excel使用的(非类型化)值,即日期为1900年的数字,而不是Python格式。自第一次提出此问题以来,它已从库中删除。

就像Charlie Clark已经建议您在加载工作簿时只能将
数据设置为
True

from openpyxl import load_workbook

wb = load_workbook("file.xlsx", data_only=True)
sh = wb["Sheet_name"]
print(sh["x10"].value)

祝您好运:)

您可以尝试下面的代码。只需在下面的代码中提供excel文件路径和单元格的位置,即您需要的行号和列号

    from openpyxl import Workbook
    wb = Workbook()
    Dest_filename = 'excel_file_path'
    ws=wb.active
    print(ws.cell(row=row_number, column=column_number).value)

已经试过了。。不知道该功能是否在我工作的地方不存在,或者模块当前没有实现它。我收到错误消息:AttributeError:“Cell”对象没有属性“internal_value”。所以我想知道是否有其他的方法来实现这一点。这对我来说不起作用,我得到了一个无价值的结果return@Nikshep,请尝试使用2.0.5,如果您仍然有问题,请提交错误报告。@Charlectlark是,但“x10”指的是字母“X”的列和数字为10的行。嘿,显然是
sh[“x10”]
是一种不推荐使用的方法。你还有这些。。。对于iter_rows()?这仍然给出了公式而不是计算值
    from openpyxl import Workbook
    wb = Workbook()
    Dest_filename = 'excel_file_path'
    ws=wb.active
    print(ws.cell(row=row_number, column=column_number).value)