让 gspread 使用相同的数据更新多个电子表格文件
Getting gspread to update multiple spreadsheet files with the same data
如上所述,我正在尝试使用 sheet ID 作为标识符更新具有相同信息的多个 sheet 文件。我试图用 for 循环来实现这一点,但没有成功。我尝试使用的一些基本代码是:
conn = gspread.authorize(credentials)
sheets = ['sheetid1', 'sheetid2']
worksheet_list = conn.open_by_key(sheets).worksheet("Rack Layout")
worksheet_list.update_acell('Q1', 'some cell value')
因此,如果我将 'sheets' 定义为一个 sheetid,则更新工作正常,但是如果我将 'sheets' 定义为多个 sheet,则会出现错误。我知道这是非常基本的,我认为问题在于它试图在同一行上打开完整列表(即两个 sheetid),而不是说 'run this line for one sheetID and then the next'。我认为实现这一点的方法是 for 循环,但我还没有让它与 for 循环一起工作。我知道这是一个 nube 问题,但我已经尝试了一段时间,从我的搜索中我没有找到任何其他关于让 gspread 执行此操作的论坛帖子。
- 您有 2 个 Google 点差sheet。
- 2 Google Spreadsheet 分别具有 "Rack Layout" 的 sheet。
- 您想将 "some cell value" 的值放入 "Rack Layout" 的 sheet 单元格 "Q1" 中,对于每个 Spreadsheet.
- 您想使用带有 python 的 gspread 来实现此目的。
- 您已经能够使用 Sheets API.
获取和放置 Spreadsheet 的值
如果我的理解是正确的,这个答案怎么样?请将此视为几个可能的答案之一。
在此修改后的脚本中,使用 for 循环将值放入每个 Spreadsheet。
修改后的脚本:
conn = gspread.authorize(credentials)
sheets = ['sheetid1', 'sheetid2']
for sheet in sheets: # Added
worksheet_list = conn.open_by_key(sheet).worksheet("Rack Layout")
worksheet_list.update_acell('Q1', 'some cell value')
如果我误解了你的问题,这不是你想要的方向,我很抱歉。
如上所述,我正在尝试使用 sheet ID 作为标识符更新具有相同信息的多个 sheet 文件。我试图用 for 循环来实现这一点,但没有成功。我尝试使用的一些基本代码是:
conn = gspread.authorize(credentials)
sheets = ['sheetid1', 'sheetid2']
worksheet_list = conn.open_by_key(sheets).worksheet("Rack Layout")
worksheet_list.update_acell('Q1', 'some cell value')
因此,如果我将 'sheets' 定义为一个 sheetid,则更新工作正常,但是如果我将 'sheets' 定义为多个 sheet,则会出现错误。我知道这是非常基本的,我认为问题在于它试图在同一行上打开完整列表(即两个 sheetid),而不是说 'run this line for one sheetID and then the next'。我认为实现这一点的方法是 for 循环,但我还没有让它与 for 循环一起工作。我知道这是一个 nube 问题,但我已经尝试了一段时间,从我的搜索中我没有找到任何其他关于让 gspread 执行此操作的论坛帖子。
- 您有 2 个 Google 点差sheet。
- 2 Google Spreadsheet 分别具有 "Rack Layout" 的 sheet。
- 您想将 "some cell value" 的值放入 "Rack Layout" 的 sheet 单元格 "Q1" 中,对于每个 Spreadsheet.
- 您想使用带有 python 的 gspread 来实现此目的。
- 您已经能够使用 Sheets API. 获取和放置 Spreadsheet 的值
如果我的理解是正确的,这个答案怎么样?请将此视为几个可能的答案之一。
在此修改后的脚本中,使用 for 循环将值放入每个 Spreadsheet。
修改后的脚本:
conn = gspread.authorize(credentials)
sheets = ['sheetid1', 'sheetid2']
for sheet in sheets: # Added
worksheet_list = conn.open_by_key(sheet).worksheet("Rack Layout")
worksheet_list.update_acell('Q1', 'some cell value')
如果我误解了你的问题,这不是你想要的方向,我很抱歉。