【发布时间】:2017-05-17 21:52:19
【问题描述】:
我想使用第二个“for i in range”语句中计算的值来使用第四个“for i in range”语句计算一个新值;但是,我收到错误:“无法将字符串转换为浮点数:'E2*37.5'”
如何调用sheet['F{}',format(i)] ='E{}*37.5'.format(i) 中计算的数值而不是公式/字符串?
import openpyxl
wb = openpyxl.load_workbook('camdatatest.xlsx', read_only= False, data_only = True)
# Assuming you are working with Sheet1
sheet = wb['Sheet1']
for i in range(2,80):
sheet['D{}'.format(i)] = '=C{}/3'.format(i)
for i in range(2,80):
sheet['F{}'.format(i)] = '=E{}*37.5'.format(i)
for i in range(2,80):
sheet['H{}'.format(i)] = '=D{}*G2*50'.format(i)
for i in range(2,80):
sheet['I{}'.format(i)].value = float(sheet['F{}'.format(i)].value)/float(sheet['H{}'.format(i)].value)
wb.save('camdatatestoutput.xlsx' , data_only= True)
【问题讨论】:
标签: python string python-3.x int openpyxl