使用行号和列号而不是单元格地址编写 Excel 公式 Python

Writing Excel Formulas with Row and Column Numbers instead of Cell Address Python

我目前有以下代码:

revenue_stats_feb = pd.DataFrame({'February' :['=D7/D40','=D7/D39','=D7/D37','=D7/D11','=D8/D7', '=D10/D8'],
                                  'merge': [1,2,3,4,5,6]})
    revenue_stats_feb = revenue_stats_feb[['February', 'merge']]

我想知道是否可以使用行号和列号而不是单元格地址来编写公式,即“=D7/D40”将是“=(3,6)/(3, 39)' 但当它导出到 excel 时,它仍然按照 D7/D40 计算。

提前感谢您的帮助。

一种方法是使用 XlsxWriter 提供的函数将 (row, col) 值转换为字符串:

from xlsxwriter.utility import xl_rowcol_to_cell

formula = '=%s/%s' % (xl_rowcol_to_cell(6,  3),
                      xl_rowcol_to_cell(39, 3))

print(formula)  # =D7/D40

有关详细信息,请参阅 XlsxWriter 文档的 Working with Cell Notation 部分。