为了让我的VLOOKUP
工作,我试了好几个小时。
这是以前工作的VLOOKUP
的一个例子。
=SVERWEIS(E3;Tabelle2!$C$1:$ZZ$5000;117;0)
我用Python XLSWriter生成了xlsx文件。有以下选择:
worksheet.protect(
# password=PASSWORD_BLATTSCHUTZ,
options={
"objects": False,
"scenarios": False,
"format_cells": True,
"format_columns": True,
"format_rows": False,
"insert_columns": False,
"insert_rows": False,
"insert_hyperlinks": True,
"delete_columns": False,
"delete_rows": False,
"select_locked_cells": True,
"sort": True,
"autofilter": True,
"pivot_tables": False,
"select_unlocked_cells": True,
}
)
发布于 2022-08-02 11:05:04
问题不在于德文或英文版的excel版本。
单元格的类型必须是“标准”,而不是“文本”或其他任何东西。否则,它将无法检测到excel命令。
要做到这一点,只需使用以下选项覆盖任意单元格:
text_format = workbook.add_format()
text_format.set_num_format("@")
worksheet.write(i + STARTROW, j, content, text_format)...
发布于 2022-07-22 08:36:03
您将需要使用英文版本的函数名和逗号,而不是分号。
这在XlsxWriter文档的XlsxWriter部分的非US Excel函数和语法小节中进行了解释。
Excel以美国英语版本的格式存储公式,而不考虑最终用户的Excel版本的语言或地区。因此,使用XlsxWriter编写的所有公式函数名都必须是英文的:
worksheet.write_formula('A1', '=SUM(1, 2, 3)') # OK
worksheet.write_formula('A2', '=SOMME(1, 2, 3)') # French. Error on load.
此外,公式必须用美国式分隔符/范围运算符编写,它是逗号(不是分号)。因此,应按以下方式编写具有多个值的公式:
worksheet.write_formula('A1', '=SUM(1, 2, 3)') # OK
worksheet.write_formula('A2', '=SUM(1; 2; 3)') # Semi-colon. Error on load.
如果您有一个非英语版本的Excel,您可以使用以下多语言公式翻译来帮助您转换公式。它也可以用逗号代替分号。
使用上一段中来自链接的翻译程序,您应该使用的公式如下:
=VLOOKUP(E3,Tabelle2!$C$1:$ZZ$5000,117,0)
这假设您有一个名为"Tabelle2“的工作表。如果不改变的话。
https://stackoverflow.com/questions/73076574
复制相似问题