Google表格API v4 - 方法:spreadsheets.values.append

Din*_*Din 2 google-sheets google-apps-script google-apis-explorer google-sheets-api

适用于Google Apps脚本的Google表格API v4方法spreadsheets.values.append的正确语法是什么?

尝试以下代码,但它给出了一个错误: Invalid JSON payload received.

function appendRow() {
  Sheets.Spreadsheets.Values.append("SpreadsheetID", "Sheet1!A:A", "USER_ENTERED", { "values": [[new Date()]] } );
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

Tan*_*ike 9

这个样本怎么样?Sheets.Spreadsheets.Values.append()使用高级Google服务Sheets.Spreadsheets.Values.append(resource, spreadsheetId, range, optionalArgs).所以样本使用的参数如下.

样品:

var resource = {
  "majorDimension": "ROWS",
  "values": [[new Date()]]
}
var spreadsheetId = "### SpreadsheetID ###";
var range = "Sheet1!A:A";
var optionalArgs = {valueInputOption: "USER_ENTERED"};
Sheets.Spreadsheets.Values.append(resource, spreadsheetId, range, optionalArgs);
Run Code Online (Sandbox Code Playgroud)


Tom*_*der 9

这里的最佳答案对我不起作用。使用 v4 的 API,经过一番尝试和错误后,以下内容有效。Google Sheets API 文档到处都是,这对于下一个版本来说无疑会过时!祝所有使用 Sheets API 的人好运!

const request = {
    spreadsheetId: 'SHEET_ID',
    range: 'Sheet1!A:B',
    valueInputOption: 'USER_ENTERED',
    insertDataOption: 'INSERT_ROWS',
    resource: {
        "majorDimension": "ROWS",
        "values": [["Row 1 Col 1","Row 1 Col 2"], ["Row 2 Col 1","Row 2 Col 2"]]
    },
    auth: oAuth2Client,
};

try {
    const response = (await sheets.spreadsheets.values.append(request)).data;
    console.log(JSON.stringify(response, null, 2));
} catch (err) {
    console.error(err);
}
Run Code Online (Sandbox Code Playgroud)