Как использовать панды, чтобы прочитать результат формулы, который использует XlsxWriter для записи? - PullRequest
0 голосов
/ 02 октября 2018

Я использовал pandas, чтобы прочитать Excel A и написать формулу в столбце K, затем сохранить в Excel B.

for row_num in range(1, 18):
    worksheet.write_formula(row_num ,10, '=MID($J%d,LEN(LEFT($J%d,SEARCH(" ",$J%d)+1)),3)' % (row_num+1, row_num+1, row_num+1))

Я мог видеть формулу, которую я вставил из Excel B, и ее правильное значение.

enter image description here

Но когда я использовал панд, чтобы прочитать Excel B и напечатать столбец K, его значение стало «0», как решить это?Я хочу видеть вычисленное значение, а не формулу, а не 0.


Я привожу пример:

#this is about writing formula to excel file
import pandas as pd
cname = []
for i in range(1,5):
    cname.append('=MID("ABCDE",LEN(LEFT("ABCDE",SEARCH("","ABCDE")+1)),3)')
s = pd.DataFrame({'col':cname})
writer = pd.ExcelWriter('output.xlsx')
writer.save()

результат: enter image description here

Другая программа для чтения вышеуказанного файла Excel: результат: это должно быть 'BCD', а не 0

enter image description here

...