如何通过gspread清除Google表格中的范围

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

嗨,我想使用 gspread 清除 google 表格中的 A3:J10000 范围。

像这样循环需要太多时间:

for cell in range_to_clear:
cell.value=''
sh.worksheet('WorksheetX').update_cells(range_to_clear,value_input_option='USER_ENTERED')

我找到了values_clear()方法,但无法使其工作:

range_2_delete = sh.worksheet("WorksheetX").range("A3:J10000")
sh.values_clear(range_2_delete)

上面的代码给出了这个错误: AttributeError: 'list' object has no attribute 'encode'

python google-sheets google-sheets-api gspread
2个回答
7
投票
  • 您想要清除 Google 电子表格上的范围值。
  • 您想使用 gspread 和 python 来实现这一点。
  • 您已经能够使用 Sheets API 为电子表格添加和获取值。

如果我的理解是正确的,这个答案怎么样?请将此视为几个可能答案之一。

我认为

values_clear()
的方法可以适合你的情况。

修改后的脚本:

请按如下方式修改您的脚本。

来自:

range_2_delete = sh.worksheet("WorksheetX").range("A3:J10000")
sh.values_clear(range_2_delete)

致:

sh.values_clear("WorksheetX!A3:J10000")

sh.values_clear("'WorksheetX'!A3:J10000")

注:

  • 这个答案假设如下。
    • 使用gspread最新版本(v3.1.0)。
    • sh
      已宣布。如果未声明
      sh
      ,请使用
      sh = gc.open('My poor gym results')
      sh = client.open_by_key(spreadsheetId)
      参考

参考:


0
投票

您应该尝试按如下方式重写代码:

    range_2_delete = sh.worksheet("WorksheetX").range("A3:J10000")
    values_clear(range_2_delete)
© www.soinside.com 2019 - 2024. All rights reserved.