Google apps script 如何使用Sheets API在最后一列之后插入列?
我有一张带有一张桌子的spreasheet: 调用此:Google apps script 如何使用Sheets API在最后一列之后插入列?,google-apps-script,google-sheets,google-sheets-api,Google Apps Script,Google Sheets,Google Sheets Api,我有一张带有一张桌子的spreasheet: 调用此:POST'https://sheets.googleapis.com/v4/spreadsheets/{my_id}/values/Sheet1!E1:append?valueInputOption=用户\使用POST方法和以下标题输入“: Authorization: Bearer {valid_auth_token} Accept: application/json Content-Type: application/json 本机构
POST'https://sheets.googleapis.com/v4/spreadsheets/{my_id}/values/Sheet1!E1:append?valueInputOption=用户\使用POST方法和以下标题输入“
:
Authorization: Bearer {valid_auth_token}
Accept: application/json
Content-Type: application/json
本机构:
{
"majorDimension": "COLUMNS",
"values": [
["Header", "Hello"]
]
}
将添加标题,Hello
作为E
中的一列。我的问题是:如何在不指定新范围的情况下在最后一列之后追加新列(本例中为E1)?有什么办法吗
通过此呼叫:https://sheets.googleapis.com/v4/spreadsheets/{my_id}
我可以获取图纸名称,但无法获取范围,我如何知道范围?- 您希望将
和Header
的值放入电子表格最后一列的下一列,而不直接给出范围Hello
- 您希望使用Sheets API实现这一点
- 您已经能够使用Sheets API获取和输入Google电子表格的值
function doPost(e) {
var obj = JSON.parse(e.postData.contents);
var sheet = SpreadsheetApp.openById(obj.spreadsheetId).getSheetByName(obj.sheetName);
var values = obj.values;
sheet.getRange(1, sheet.getLastColumn() + 1, values.length, values[0].length).setValues(values);
return ContentService.createTextOutput("ok");
}
- 此示例脚本将值放入电子表格上最后一列的下一列
- 当“任何人,甚至匿名”设置为“谁有权访问应用:”时,不需要使用访问令牌
https://script.google.com/macros/s/###/exec
。
- 当您修改Google Apps脚本时,请重新部署为新版本。这样,修改后的脚本将反映到Web应用程序中。请注意这一点。
curl -L \
-H "Authorization: Bearer ###" \
-d '{"spreadsheetId": "###", "sheetName": "Sheet1", "values": [["Header"], ["Hello"]]}' \
"https://script.google.com/macros/s/###/exec"
- 请设置上面检索到的Web应用的URL、电子表格ID和工作表名称
- 在这种情况下,范围不需要包含在请求正文中。因为数据范围是在Web应用程序的脚本中检索的
- 当运行上述curl命令时,将
和“Header”
的值置于“Sheet1”工作表上最后一列的下一列“Hello”
- 例如,如果发生授权错误,请将“任何人,甚至匿名”设置为“谁有权访问应用:”。在这种情况下,不需要使用访问令牌
- 或者,请包括
和/或https://www.googleapis.com/auth/drive.readonly
访问令牌https://www.googleapis.com/auth/drive
如果我误解了你的问题,而这不是你想要的方向,我道歉。谢谢。你的帖子很有帮助。我是手工输入数据的,所以我想用编程的方式来完成。@assembler谢谢您的回复。我很高兴你的问题解决了。