0

我编写了一个 python 程序,它基本上以 `=FORMULA 的形式读取 excel 公式并将其写入输出 excel。这是我的代码:

source=open_workbook('source.xls',formatting_info=True)

wb = copy(source)
ws = wb.get_sheet(0)

funWriter = open_workbook('template.xls')
VolProfile = funWriter.sheet_by_index(0)

    for row in range(VolProfile.nrows):
-   for col in range(VolProfile.ncols):
-        cellValue = VolProfile.cell(row,col).value
-        try:
-            if cellValue[0] == "`":
-                 cellValue = cellValue[2:]
-                 ws.write(row,col,Formula(cellValue))
-            else:
-                 pass
-         except:
-               pass
wb.save('Final.xls')

代码成功写入公式,但是,除非我单击公式栏并按 Enter,否则 excel 无法评估并生成(#VALUE!)错误。

我试图保存它并按f9,但它们都不起作用。关于如何防止我点击并按 Enter 800 次的任何想法?

谢谢!

4

1 回答 1

1

我不熟悉除 VBA 之外的任何语言语法,但要在单元格中读写 FORMULA,应该使用Cell.Formulaproperty,而不是value

也许对于 Python 来说这并不重要,而只是第一个想法。

于 2013-01-25T16:58:07.477 回答