Формулы Excel необходимо щелкнуть, чтобы получить оценку

Я написал программу на python, которая в основном читает формулы excel в форме `= FORMULA и записывает их в вывод 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')

код успешно записывает формулу, однако Excel не смог оценить и сгенерировать ошибку (# ЗНАЧ!), Если я не нажму на строку формул и не нажму ввод.

Я пытался сохранить его и нажать f9, и все они не работали. Любая идея о том, как помешать мне щелкнуть и нажать Enter 800 раз ??

Спасибо!


person user1948847    schedule 25.01.2013    source источник
comment
(1) Ваш исходный код должен работать как есть, чтобы люди могли запускать его, чтобы попробовать, без необходимости угадывать отсутствующие импорты и исправлять ваши отступы. (2) Пожалуйста, предоставьте содержимое МАЛЕНЬКИХ source.xls и template.xls, которые воспроизводят проблему (3) try: something ... except: pass - это огромный запах кода ... какие ошибки вы заметаете под ковер и почему?   -  person John Machin    schedule 28.01.2013


Ответы (1)


Я НЕ знаком с синтаксисом ЛЮБОГО языка, кроме VBA, но для чтения и записи ФОРМУЛЫ в ячейках нужно использовать свойство Cell.Formula, а не значение.

Возможно, для Python это не имеет значения, а просто первая мысль.

person Peter L.    schedule 25.01.2013