尝试使用 API v4 在 google 工作表中写入一行时出错
Error trying to write a row in google sheets using API v4
我正在尝试使用 java 和 Google Sheets API v4 向 sheet 写入一行。我收到一个我无法理解的错误。任何帮助将不胜感激!
传递的值是:
sRange = '09/03/2017 11:01:13 PM'!A1
body = {majorDimension=ROWS, values=[[Test ID, Test Name, Run ID, Status, Run Duration, Execution Date, Execution Time]]}
这里是故障码:
outputValues = Arrays.asList(Arrays.asList("Test ID", "Test Name", "Run ID", "Status", "Run Duration", "Execution Date", "Execution Time"));
sRange = "'" + sSheetName + "'" + "!" + sHeaderRow;
body = new ValueRange().setValues(outputValues).setMajorDimension("ROWS");
result = service.spreadsheets().values().update(sSpreadsheetID, sRange, body).setValueInputOption("RAW").execute();
结果:
{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "Requested writing within range ['09/03/2017 11:01:13 PM'!A1], but tried writing to column [B]",
"reason" : "badRequest"
} ],
"message" : "Requested writing within range ['09/03/2017 11:01:13 PM'!A1], but tried writing to column [B]",
"status" : "INVALID_ARGUMENT"
}
我认为 sRange 应该使用 A1 notation:
看起来像:
SheetName!A1:B2
Sheet1!A1
查看 link 了解更多信息。
由于 sheet 标题中的字符问题,出现此错误。删除 sheet 标题中的空格、破折号和冒号并用下划线替换它们修复了它。
我已经研究这个问题一段时间了,在我的例子中,我试图连续更新 2 个以上的字段,并且我将范围指定为 A1:B1,这仅描述了要更新的 2 行。我将其更改为 A1 并且有效。
所以让你的范围是:
SheetName!A1
将您的 Sheet 名称更改为它的一些简单版本(没有特殊符号)。
对我的情况有帮助。
我正在尝试使用 java 和 Google Sheets API v4 向 sheet 写入一行。我收到一个我无法理解的错误。任何帮助将不胜感激!
传递的值是:
sRange = '09/03/2017 11:01:13 PM'!A1
body = {majorDimension=ROWS, values=[[Test ID, Test Name, Run ID, Status, Run Duration, Execution Date, Execution Time]]}
这里是故障码:
outputValues = Arrays.asList(Arrays.asList("Test ID", "Test Name", "Run ID", "Status", "Run Duration", "Execution Date", "Execution Time"));
sRange = "'" + sSheetName + "'" + "!" + sHeaderRow;
body = new ValueRange().setValues(outputValues).setMajorDimension("ROWS");
result = service.spreadsheets().values().update(sSpreadsheetID, sRange, body).setValueInputOption("RAW").execute();
结果:
{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "Requested writing within range ['09/03/2017 11:01:13 PM'!A1], but tried writing to column [B]",
"reason" : "badRequest"
} ],
"message" : "Requested writing within range ['09/03/2017 11:01:13 PM'!A1], but tried writing to column [B]",
"status" : "INVALID_ARGUMENT"
}
我认为 sRange 应该使用 A1 notation:
看起来像:
SheetName!A1:B2
Sheet1!A1
查看 link 了解更多信息。
由于 sheet 标题中的字符问题,出现此错误。删除 sheet 标题中的空格、破折号和冒号并用下划线替换它们修复了它。
我已经研究这个问题一段时间了,在我的例子中,我试图连续更新 2 个以上的字段,并且我将范围指定为 A1:B1,这仅描述了要更新的 2 行。我将其更改为 A1 并且有效。
所以让你的范围是:
SheetName!A1
将您的 Sheet 名称更改为它的一些简单版本(没有特殊符号)。 对我的情况有帮助。