Python - Openpyxl - 将公式添加到列并将公式重复到最后一行数据

Python - Openpyxl - Add formula to column and repeat formula to last row of data

正在尝试执行以下操作: 在 G 列中添加以下公式: "=ACOS(COS(RADIANS(90-D2)) *COS(RADIANS(90-D3)) +SIN(RADIANS(90-D2)) *SIN(RADIANS(90-D3)) *COS(RADIANS(E2-E3))) *6371"

在 G 列中重复此公式,直到最后一行包含 D 和 E 列中的数据。 我希望公式中的单元格随着公式在行中的下降而更新(即 D2 变为 D3...)

尝试了以下但没有成功。这将复制 G 列所有行中的公式以及 D 和 E 列中的数据,但我缺少为每一行更新公式中的 D 和 E 单元格的部分。我的脚本不完整,不知道如何修复。

for row_num in range(3, max_row+1):
    sheet['G{}'.format(row_num)] = '=ACOS(COS(RADIANS(90-D2)) *COS(RADIANS(90-D3)) +SIN(RADIANS(90-D2)) *SIN(RADIANS(90-D3)) *COS(RADIANS(E2-E3))) *6371'.format(row_num)```

我是 Python 的新手,但我刚刚弄明白了。以下作品。

for row_num in range(3, max_row+1): sheet['G{}'.format(row_num)] = '=ACOS(COS(RADIANS(90-D{})) *COS(RADIANS(90-D{})) +SIN(RADIANS(90-D{})) *SIN(RADIANS(90-D{})) *COS(RADIANS(E{}-E{}))) *6371'.format(row_num-1, row_num, row_num-1, row_num, row_num-1, row_num)