GSpread 细胞合并



我正在尝试使用Gspread for Python合并Gsheet中的单元格,但是我找不到任何文档。

我已经使用 gspread_formatting 模块来格式化单元格的文本和颜色,但我找不到与合并单元格有关的任何内容。

我没有写任何代码,因为我找不到任何示例。

我希望能够根据范围合并单元格。

谁能帮我?

干杯。

  • 您想知道如何使用gspread合并Google电子表格的单元格。
  • 您已经能够使用 gspread 将值放入电子表格并获取值。

如果我的理解是正确的,那么这个答案呢?在此修改中,使用batch_update()方法。

示例脚本:

请设置spreadsheetIdsheetNamerange的网格范围。

spreadsheetId = "###"
sheetName = "Sheet1"
client = gspread.authorize(credentials)
ss = client.open_by_key(spreadsheetId)
sheetId = ss.worksheet(sheetName)._properties['sheetId']
body = {
    "requests": [
        {
            "mergeCells": {
                "mergeType": "MERGE_ALL",
                "range": {  # In this sample script, all cells of "A1:C3" of "Sheet1" are merged.
                    "sheetId": sheetId,
                    "startRowIndex": 0,
                    "endRowIndex": 3,
                    "startColumnIndex": 0,
                    "endColumnIndex": 3
                }
            }
        }
    ]
}
res = ss.batch_update(body)

注意:

  • 请将范围设置为网格范围。
  • 在此示例脚本中,合并了"Sheet1"的"A1:C3"的所有单元格。
  • MERGE_ALL更改为MERGE_ROWS时,"A1:C1"、"A2:C2"和"A3:C3"的行将被合并。
  • MERGE_ALL更改为MERGE_COLUMNS时,"A1:A3"、"B1:B3"和"C1:C3"的列将被合并。

引用:

  • batch_update(正文(
  • 方法:电子表格.批处理更新
  • 合并单元格请求
  • 网格范围

如果这对您的情况没有用,我深表歉意。

Gspread 现在有可用于合并此页面上单元格的文档。

如果工作表的名称是my_ws并且您希望将单元格A1合并为A5,则可以输入以下内容:

my_ws.merge_cells(A1:A5, merge_type='MERGE_ALL')

最新更新