Google 工作表 API v4 values.get 和 values.batchGet returning 未定义或空单元格缺少 return 值
Google Sheets API v4 values.get and values.batchGet returning undefined or return value is missing for empty cells
Google Sheets API v4,如果单元格为空,Values.get
returning 'undefined'。如果单元格为空,则 Values.get
returns {majorDimension=ROWS, range=Sheet1!J7:L7}
没有 'values' 部分。
如果单元格为空,有没有办法得到以下输出?
Values.get
到 return [[]]
而不是 undefined
Values.batchGet
到 return {majorDimension=ROWS, values=[[]], range=Sheet1!J7:L7}
而不是 {majorDimension=ROWS, range=Sheet1!J7:L7}
代码如下:
function getOneCellValue() {
var response = Sheets.Spreadsheets.Values.get("SpreadsheetId", "Sheet1!L20");
Logger.log(response.values);
}
function getValueRanges() {
var response = Sheets.Spreadsheets.Values.batchGet("SpreadsheetId", {ranges: ["Sheet1!D7:F7", "Sheet1!J7:L7"]});
Logger.log(response.valueRanges);
}
谢谢。
工作表 API Values.get()
& Values.batchGet()
ValueRange: values[] 丢弃额外的 rows/columns 如果它们是空的:
The data that was read or to be written. This is an array of arrays, the outer array representing all the data and each inner array representing a major dimension. Each item in the inner array corresponds with one cell.
For output, empty trailing rows and columns will not be included.
如果您希望值返回为空单元格,请使用 built-in method range.getValues()
。或将 undefined
替换为 [[]]
值。
function getOneCellValue() {
var response = Sheets.Spreadsheets.Values.get("SpreadsheetId", "Sheet1!L20");
// Assign the empty array if undefined
var api_value = response.values || [[]];
Logger.log(api_value);
// Or use getValues()
var ss = SpreadsheetApp.getActiveSpreadsheet();
var get_values = ss.getRange("Sheet1!L20").getValues();
Logger.log(get_values);
}
设置 majorDimension='COLUMNS' 而不是 majorDimension='ROWS'。在没有值的地方设置 majorDimension='COLUMNS' returns 占位符。可以获取有关函数参数的更多信息 here
result = sheet.values().get(
spreadsheetId=spreadsheet_id,
range=data_range,
majorDimension='COLUMNS'
).execute()
Google Sheets API v4,如果单元格为空,Values.get
returning 'undefined'。如果单元格为空,则 Values.get
returns {majorDimension=ROWS, range=Sheet1!J7:L7}
没有 'values' 部分。
如果单元格为空,有没有办法得到以下输出? Values.get
到 return [[]]
而不是 undefined
Values.batchGet
到 return {majorDimension=ROWS, values=[[]], range=Sheet1!J7:L7}
而不是 {majorDimension=ROWS, range=Sheet1!J7:L7}
代码如下:
function getOneCellValue() {
var response = Sheets.Spreadsheets.Values.get("SpreadsheetId", "Sheet1!L20");
Logger.log(response.values);
}
function getValueRanges() {
var response = Sheets.Spreadsheets.Values.batchGet("SpreadsheetId", {ranges: ["Sheet1!D7:F7", "Sheet1!J7:L7"]});
Logger.log(response.valueRanges);
}
谢谢。
工作表 API Values.get()
& Values.batchGet()
ValueRange: values[] 丢弃额外的 rows/columns 如果它们是空的:
The data that was read or to be written. This is an array of arrays, the outer array representing all the data and each inner array representing a major dimension. Each item in the inner array corresponds with one cell.
For output, empty trailing rows and columns will not be included.
如果您希望值返回为空单元格,请使用 built-in method range.getValues()
。或将 undefined
替换为 [[]]
值。
function getOneCellValue() {
var response = Sheets.Spreadsheets.Values.get("SpreadsheetId", "Sheet1!L20");
// Assign the empty array if undefined
var api_value = response.values || [[]];
Logger.log(api_value);
// Or use getValues()
var ss = SpreadsheetApp.getActiveSpreadsheet();
var get_values = ss.getRange("Sheet1!L20").getValues();
Logger.log(get_values);
}
设置 majorDimension='COLUMNS' 而不是 majorDimension='ROWS'。在没有值的地方设置 majorDimension='COLUMNS' returns 占位符。可以获取有关函数参数的更多信息 here
result = sheet.values().get(
spreadsheetId=spreadsheet_id,
range=data_range,
majorDimension='COLUMNS'
).execute()