单个单元格调用excel函数

from openpyxl import Workbook
wb = Workbook() #实例化
ws = wb.active #激活worksheet
#给单元格设值
ws['A1'],ws['B1']=3,2
#调用函数或简单运算
ws['C2'] = '=SUM(A1:B1)'
ws['C1'] = '=A1+B1'
ws['D1'] = '=round(A1/B1,2)'
wb.save('./test.xlsx') #保存到xlsx文件
#查看结果
for i in ws.rows:
    for j in i:
        print(j.value)

                                                        

在python看到的输出结果是字符但在excel中是直接输出公式的结果。(图一是python显示的结果,图二是excel界面的显示结果)

多个单元格引用函数

#相同值填充
for i in ws.rows:
    for j in i:
           j.value = '=max(3,2)'

多个单元格引用函数

#column为列,row为行
for j in range(1,ws.max_row+1):
    a = '=sum(A%d,B%d)' % (j,j)
    ws.cell(column=ws.max_column+1,row=j).value = a

更多推荐

python openpyxl引用excel公式函数