当前位置: 代码迷 >> python >> 将值读取为公式而不是数据时出现问题
  详细解决方案

将值读取为公式而不是数据时出现问题

热度:9   发布时间:2023-07-14 08:58:28.0

当我想阅读我的Excel时:

from openpyxl import load_workbook
import numpy as np

"read Excel"
wb = load_workbook('Libro1.xlsx')
hoja_1 = wb.get_sheet_by_name('1')

x = np.zeros(hoja_1.max_row)
y = np.zeros(hoja_1.max_row)

for i in range(0, hoja_1.max_row):
    x[i] = hoja_1.cell(row = i + 1, column = 1).value
    y[i] = hoja_1.cell(row = i + 1, column = 2).value

print(x)
print(y)

我收到一个错误:

 x[i] = hoja_1.cell(row = i + 1, column = 1).value 

ValueError :无法将字符串转换为浮点型: '= A1 + 1'

一种但相当罕见的可能性是,“ Libro1.xlsx”中的单元格标记为文本格式,从而阻止了其重新计算。

当您打开Excel文件时,您会看到重新计算的=A1+1值还是文本形式? 无论如何,将最简单的数字格式应用于Excel文件中的所有单元格(选择单元格并选择格式),还消除任何条件格式。

这里描述的类似问题: : 。 确保您的openpyxl版本是最新的。

x和y是对象。 在分配值之前将其转换为列表。

尝试这个:

x =列表(np.zeros(hoja_1.max_row))y =列表(np.zeros(hoja_1.max_row))