有没有办法通过google sheet API获取行和列索引?
以下是我如何通过官方样本获取数据。
// Get the API client and construct the service object.
$client = getClient();
$service = new Google_Service_Sheets($client);
$spreadsheetId = '{MY_SPREADSHEET_ID}';
$range = 'dummy!A1:E';
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
$values = $response->getValues();
var_dump($values);
这给了我数组中的数据。
此外,我想获取单元格的索引(例如,列A和行4),该单元格来自哪个单元格。
答案 0 :(得分:1)
根据values.get的API参考,您应该在响应中提供范围字符串。此响应中没有方便的行/单元索引,因为此响应不保证与请求的范围为1:1:
回复正文
如果成功,则响应正文包含ValueRange的实例。
ValueRange.range:
值覆盖的范围,以A1表示法。对于输出,此范围指示整个请求的范围,即使这些值将排除尾随行和列。附加值时,此字段表示搜索表的范围,之后将附加值。
因此,由于不会返回尾随空单元格,因此在请求时不能保证获得5x5值数组,例如A1:E5
但是E列为空
如果要使用行和列索引,可以使用Spreadsheets.get方法并指定要检索的范围(设置includeGridData
标志)。此调用将返回Spreadsheet resource。然后,您将找到要使用的工作表(如果您没有从任何其他工作表请求范围,则可能是工作表中的第一个工作表),并检查它所持有的各种data
。
此外,如果您基于行,列输入以编程方式请求给定范围(使用Spreadsheet.values
时),则可以使用该输入,返回值数组的长度以及最大行的长度计算工作指数。获得这些最大指数可以如here所示完成。