簡體   English   中英

獲取 gspread 以使用相同的數據更新多個電子表格文件

[英]Getting gspread to update multiple spreadsheet files with the same data

如上所述,我嘗試使用工作表 ID 作為標識符更新多個具有相同信息的工作表文件。 我試圖用 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' 定義為多個工作表,則會出現錯誤。 我知道這真的很基本,我認為問題在於它試圖在同一行上打開完整列表(即兩個 sheetid),而不是說“先為一個 sheetID 運行此行,然后再運行下一個”。 我認為實現這一點的方法是 for 循環,但我還沒有讓它與 for 循環一起工作。 我知道這是一個 nube 問題,但我已經嘗試了一段時間,從我的搜索中我沒有找到任何其他關於讓 gspread 做到這一點的論壇帖子。

  • 您有 2 個 Google 電子表格。
    • 2 谷歌電子表格分別有“機架布局”表。
  • 您想將“某個單元格值”的值放在每個電子表格的“機架布局”表中的單元格“Q1”中。
  • 您想使用 gspread 和 python 來實現這一點。
  • 您已經能夠使用 Sheets API 獲取和放置電子表格的值。

如果我的理解是正確的,這個答案怎么樣? 請將此視為幾種可能的答案之一。

在這個修改后的腳本中,使用 for 循環將值放入每個電子表格。

修改后的腳本:

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')

如果我誤解了您的問題並且這不是您想要的方向,我深表歉意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM