有没有一种方法可以使用适用于Python的gspread API自动调整Google表格中的列?

时间:2019-08-02 12:04:15

标签: python google-drive-api google-sheets-api gspread

有没有一种方法可以使用针对Pyton的gspread API在Google表格中处理行?自动调整效果很好,但手动更改尺寸也可以。

1 个答案:

答案 0 :(得分:1)

  • 您要使用Sheets API将列宽调整为“自动调整”。
  • 您想使用gspread来实现。
  • 您已经能够使用gspread放置和获取电子表格的值。

如果我的理解是正确的,那么该示例脚本如何?请认为这只是几个答案之一。

在此示例脚本中,我对gspread的batch_update()使用了“ autoResizeDimensions”。这将使用Sheets API的电子表格sheets.batchUpdate。

示例脚本:

spreadsheetName = "###"  # Please set Spreadsheet name.
sheetName = "###"  # Please set sheet name.

ss = client.open(spreadsheetName)
sheetId = ss.worksheet(sheetName)._properties['sheetId']
body = {
    "requests": [
        {
            "autoResizeDimensions": {
                "dimensions": {
                    "sheetId": sheetId,
                    "dimension": "COLUMNS",
                    "startIndex": 0,  # Please set the column index.
                    "endIndex": 2  # Please set the column index.
                }
            }
        }
    ]
}
res = ss.batch_update(body)

注意:

  • 在上面的示例脚本中,startIndexendIndex分别使用02。这意味着sheetName的列“ A”和“ B”的宽度会自动调整大小。
  • 如果要使用电子表格ID,请将ss = client.open(spreadsheetName)修改为ss = client.open_by_key(spreadsheetId)

参考文献:

如果我误解了您的问题,而这不是您想要的方向,我深表歉意。