借助 Google Sheets API,您可以添加、移除和操控工作表中的行和列。本页中的示例说明了如何使用 Sheets API 实现一些常见的行和列操作。
这些示例以 HTTP 请求的形式呈现,以保持语言中立。如需了解如何使用 Google API 客户端库以不同语言实现批量更新,请参阅更新 电子表格。
在这些示例中,占位符 SPREADSHEET_ID 和 SHEET_ID
表示您需要提供这些 ID 的位置。您可以在电子表格网址中找到电子表格
ID。您可以使用
spreadsheets.get方法获取工作表 ID。范围使用 A1 表示法 指定。示例范围为 Sheet1!A1:D5。
调整列宽或行高
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
UpdateDimensionPropertiesRequest
将 A 列的宽度属性更新为 160 像素。第二个请求将前三行的行高属性更新为 40 像素。dimension 字段用于确定该操作是应用于工作表的列还是行。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"updateDimensionProperties": {
"range": {
"sheetId": SHEET_ID,
"dimension": "COLUMNS",
"startIndex": 0,
"endIndex": 1
},
"properties": {
"pixelSize": 160
},
"fields": "pixelSize"
}
},
{
"updateDimensionProperties": {
"range": {
"sheetId": SHEET_ID,
"dimension": "ROWS",
"startIndex": 0,
"endIndex": 3
},
"properties": {
"pixelSize": 40
},
"fields": "pixelSize"
}
}
]
}追加空行或空列
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
AppendDimensionRequest
追加行和列。第一个请求在工作表的末尾追加三个空行,而第二个请求则追加一个空列。dimension 字段用于确定该操作是应用于工作表的列还是行。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"appendDimension": {
"sheetId": SHEET_ID,
"dimension": "ROWS",
"length": 3
}
},
{
"appendDimension": {
"sheetId": SHEET_ID,
"dimension": "COLUMNS",
"length": 1
}
}
]
}自动调整列宽
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
AutoResizeDimensionsRequest
根据列内容的大小调整 A:C 列的大小。dimension 字段表示该操作应用于工作表的列。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"autoResizeDimensions": {
"dimensions": {
"sheetId": SHEET_ID,
"dimension": "COLUMNS",
"startIndex": 0,
"endIndex": 3
}
}
}
]
}自动调整行高
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
AutoResizeDimensionsRequest
清除前三行的行高。然后,行高会根据每行中单元格的内容动态增加。dimension 字段表示该操作应用于工作表的行。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"autoResizeDimensions": {
"dimensions": {
"sheetId": SHEET_ID,
"dimension": "ROWS",
"startIndex": 0,
"endIndex": 3
}
}
}
]
}删除行或列
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
DeleteDimensionRequest
删除工作表中的前三行。第二个请求会删除 B:D 列。
dimension 字段用于确定该操作是应用于工作表的列还是行。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"deleteDimension": {
"range": {
"sheetId": SHEET_ID,
"dimension": "ROWS",
"startIndex": 0,
"endIndex": 3
}
}
},
{
"deleteDimension": {
"range": {
"sheetId": SHEET_ID,
"dimension": "COLUMNS",
"startIndex": 1,
"endIndex": 4
}
}
},
],
}插入空行或空列
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
InsertDimensionRequest
在特定索引处插入列或行(例如,在工作表的顶部添加空行)。第一个请求在 C 列插入两个空列。
第二个请求从第 1 行开始插入三个空行。
dimension 字段用于确定该操作是应用于工作表的列还是行。
如果为 true,inheritFromBefore 字段会告知 Sheets API 为新列或新行提供与前一行或前一列相同的属性;如果为 false,则从新列或新行之后的维度继承属性。
如果在第 1 行插入行或在 A 列插入列,则 inheritFromBefore 不能为 true。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"insertDimension": {
"range": {
"sheetId": SHEET_ID,
"dimension": "COLUMNS",
"startIndex": 2,
"endIndex": 4
},
"inheritFromBefore": true
}
},
{
"insertDimension": {
"range": {
"sheetId": SHEET_ID,
"dimension": "ROWS",
"startIndex": 0,
"endIndex": 3
},
"inheritFromBefore": false
}
},
],
}移动行或列
以下
spreadsheets.batchUpdate
代码示例展示了如何使用
MoveDimensionRequest
将 A 列移动到 D 列的位置。第二个请求将第 5-10 行移动到第 20 行的位置。
dimension 字段用于确定该操作是应用于工作表的列还是行。destinationIndex 字段用于确定使用从零开始的起始索引将源数据移动到何处。
请求协议如下所示。
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"moveDimension": {
"source": {
"sheetId": SHEET_ID,
"dimension": "COLUMNS",
"startIndex": 0,
"endIndex": 1
},
"destinationIndex": 3
}
},
{
"moveDimension": {
"source": {
"sheetId": SHEET_ID,
"dimension": "ROWS",
"startIndex": 4,
"endIndex": 10
},
"destinationIndex": 19
}
},
],
}