使用for循环更新范围内的单元格

问题描述 投票:0回答:1

我对编码非常陌生,因此很容易道歉。我在Google表格中有两列,我想在第三列中添加一个公式,如下所示:=(E3 * 90)+(F3 * 10)-列中的值是等级,而90和10是固定的权重。

我创建了一个for循环,尝试在更新列中的每个单元格时尝试遍历range(3,90)。

[它在每个单元格中打印公式,但这只是最后一次迭代'=(E89 * 90)+(F89 * 10)'

我设法通过将report.update_acell('E'+str(i),'=(E'+str(i)+'*90)+(F'+str(i)+'*10)')添加到for循环中来使其正常工作,但这会创建过多的调用并导致问题。

sh = client.open("grading")
report = sh.worksheet("Report")
weighted = report.range('G3:G89')

for cell in weighted:
    for i in range(3,90):
        cell.value = '=(E'+str(i)+'*90)+(F'+str(i)+'*10)'

report.update_cells(weighted, value_input_option='USER_ENTERED')

我想看到的是,'加权'范围内的每个单元格都将更新为公式,该公式将查看它们旁边的两个单元格并将它们添加到公式中,以便在加权列中可见结果。例如。第3行应为=(E3 * 90)+(F3 * 10)第4行应为=(E4 * 90)+(F4 * 10),依此类推,直到完成范围。

python google-sheets gspread
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.