如何在 python 单元格中写入 Excel 公式
How to write Excel formula in cells in python
我尝试在循环中的某些列中添加 Excel 公式。
简而言之:我有一个 excel 电子表格,由于循环,我在第一个列(A 和 B)中成功生成了 3000 行的随机数。
现在我想在 C 列中写下 A 与 B 相乘的公式,在 D 列中在同一个循环中添加 A + C。
非常感谢您的提前帮助!
import xlsxwriter
import os
import random
path = r"/Users/MAC/Desktop/test.xlsx"
workbook = xlsxwriter.Workbook(path)
worksheet = workbook.add_worksheet("formula")
worksheet.write(0, 0, "Amount")
worksheet.write(0, 1, "Interest")
worksheet.write(0, 2, "Fees")
worksheet.write(0, 3, "Total Amount")
for n in range(1, 3000):
worksheet.write(n, 0, random.randint(1,150000))
worksheet.write(n, 1, random.randint(1, 100))
# worksheet.write(n,2, a*b/100) ??????
# worksheet.write(n,3, a+c) ??????
workbook.close()
您可以使用 worksheet.write_formula.
示例:
for n in range(1, 10):
worksheet.write(n, 0, random.randint(1,150000))
worksheet.write(n, 1, random.randint(1, 100))
cell1 = xl_rowcol_to_cell(n,0)
cell2 = xl_rowcol_to_cell(n,1)
worksheet.write_formula(n, 2, f'=({cell1}*{cell2})/100')
workbook.close()
其中 xl_rowcol_to_cell 将单元格从坐标转换为字符串。
我尝试在循环中的某些列中添加 Excel 公式。 简而言之:我有一个 excel 电子表格,由于循环,我在第一个列(A 和 B)中成功生成了 3000 行的随机数。 现在我想在 C 列中写下 A 与 B 相乘的公式,在 D 列中在同一个循环中添加 A + C。 非常感谢您的提前帮助!
import xlsxwriter
import os
import random
path = r"/Users/MAC/Desktop/test.xlsx"
workbook = xlsxwriter.Workbook(path)
worksheet = workbook.add_worksheet("formula")
worksheet.write(0, 0, "Amount")
worksheet.write(0, 1, "Interest")
worksheet.write(0, 2, "Fees")
worksheet.write(0, 3, "Total Amount")
for n in range(1, 3000):
worksheet.write(n, 0, random.randint(1,150000))
worksheet.write(n, 1, random.randint(1, 100))
# worksheet.write(n,2, a*b/100) ??????
# worksheet.write(n,3, a+c) ??????
workbook.close()
您可以使用 worksheet.write_formula.
示例:
for n in range(1, 10):
worksheet.write(n, 0, random.randint(1,150000))
worksheet.write(n, 1, random.randint(1, 100))
cell1 = xl_rowcol_to_cell(n,0)
cell2 = xl_rowcol_to_cell(n,1)
worksheet.write_formula(n, 2, f'=({cell1}*{cell2})/100')
workbook.close()
其中 xl_rowcol_to_cell 将单元格从坐标转换为字符串。