- 您想使用 Google Docs API 在 Google 文档中插入表格。
如果我的理解是正确的,那么这个修改呢?用作请求主体的对象是 docs.documents.get 方法返回的对象。在这个答案中,我想向您展示 3 个示例。
示例脚本 1:
此示例脚本来自the official document。
以下示例将文本插入表格的第一个表格单元格并添加表格行。
作为重要的一点,在您运行脚本之前,请创建新的 Google 文档并放置一个表格。然后,请使用脚本来创建文档。这样Hello的文本就被放到了表格的“A1”中,表格中增加了一行。
脚本:
requests = [{
'insertText': {
'location': {
'index': 5
},
'text': 'Hello'
}
},
{
'insertTableRow': {
'tableCellLocation': {
'tableStartLocation': {
'index': 2
},
'rowIndex': 1,
'columnIndex': 1
},
'insertBelow': 'true'
}
}
]
result = service.documents().batchUpdate(documentId=DOCUMENT_ID, body={'requests': requests}).execute()
示例脚本 2:
在此示例脚本中,创建了一个 2 行 2 列的新表。
脚本:
requests = [
{
"insertTable":
{
"rows": 2,
"columns": 2,
"location":
{
"index": 1
}
}
}
]
result = service.documents().batchUpdate(documentId=DOCUMENT_ID, body={'requests': requests}).execute()
示例脚本 3:
不幸的是,虽然我一直在官方文档中寻找创建表格并将值放入每个单元格中的方法,但我找不到。所以我对此进行了实验。在这个示例脚本中,我向您展示了创建表格并将值放入每个单元格的方法。
此示例脚本的流程如下。
- 创建一个 2 行 2 列的表。
- 将
A1、B1、A2 和B2 的文本放入表格的单元格“A1:B2”中。
- 从我的实验中,得到了以下结果。
- 对于行,要求每5个索引设置一次索引。
- 对于列,需要设置每2个索引的索引。
- 作为重要的一点,当将值放入单元格时,请按“B2”、“A2”、“B1”和“A1”的顺序排列。因为第一次放“A1”时,其他单元格的索引会改变。
脚本:
requests = [
{
"insertTable":
{
"rows": 2,
"columns": 2,
"location":
{
"index": 1
}
}
},
{
"insertText":
{
"text": "B2",
"location":
{
"index": 12
}
}
},
{
"insertText":
{
"text": "A2",
"location":
{
"index": 10
}
}
},
{
"insertText":
{
"text": "B1",
"location":
{
"index": 7
}
}
},
{
"insertText":
{
"text": "A1",
"location":
{
"index": 5
}
}
}
]
result = service.documents().batchUpdate(documentId=DOCUMENT_ID, body={'requests': requests}).execute()
注意:
- 这些示例脚本使用
https://www.googleapis.com/auth/documents 的范围。请注意这一点。
- 在这些示例脚本中,假设您已经使用过 Google Docs API。如果运行脚本时出现错误,请查看the Quickstart。
- Google Docs API 现在正在增长。所以我认为将来可能会针对这种情况添加更简单的方法。
参考资料:
如果我误解了您的问题并且这不是您想要的结果,我深表歉意。