Python xlwings: 在xlsm中插入并计算一个非英文的Excel-公式
Python xlwings: Insert and calculate a non-english Excel-formula into xlsm
我想在 xlsm 文件中使用 python 模块 xlwings 设置一个 excel 公式。
当我用 xlwings 的 .value 函数设置它时,公式被正确地输入到文件中,但是在打开文件时公式没有被计算。相反,该单元格显示为以下错误:
"#NAME?"
单击单元格并按 "ENTER" 键后,计算正确。但是,我显然不想对数百万行/单元格执行此操作,我在其中输入了带有 Python 的公式。
这是我用来插入值和公式的代码:
import xlwings as xw
workbook = xw.Book('filename.xlsm')
import_sheet = workbook.sheets['my_sheet']
# setting a value
import_sheet['A1'].value = 401 # works as expected.
# setting a function
import_sheet['B1'].value = '=ZEILE()' # is not displayed correctly
解决方案很简单但并不明显:
将公式更改为对应的英文公式可以正确计算和显示公式(甚至在我打开文件时将其翻译成我 excel 的语言):
import_sheet['B1'].value = '=ROW()'
我的假设是它连接到 xlwings 语言/函数处理功能?虽然只是一种预感。
我想在 xlsm 文件中使用 python 模块 xlwings 设置一个 excel 公式。
当我用 xlwings 的 .value 函数设置它时,公式被正确地输入到文件中,但是在打开文件时公式没有被计算。相反,该单元格显示为以下错误:
"#NAME?"
单击单元格并按 "ENTER" 键后,计算正确。但是,我显然不想对数百万行/单元格执行此操作,我在其中输入了带有 Python 的公式。
这是我用来插入值和公式的代码:
import xlwings as xw
workbook = xw.Book('filename.xlsm')
import_sheet = workbook.sheets['my_sheet']
# setting a value
import_sheet['A1'].value = 401 # works as expected.
# setting a function
import_sheet['B1'].value = '=ZEILE()' # is not displayed correctly
解决方案很简单但并不明显:
将公式更改为对应的英文公式可以正确计算和显示公式(甚至在我打开文件时将其翻译成我 excel 的语言):
import_sheet['B1'].value = '=ROW()'
我的假设是它连接到 xlwings 语言/函数处理功能?虽然只是一种预感。