这是我的电子表格的外观:
![](https://istack.dev59.com/6QCfa.webp)
ValueRange response = this.mySheetsService.spreadsheets().
values().get(spreadsheetId, range).execute();
List<List<Object>> values = response.getValues();
String rangeToUpdate;
Log.i(TAG, "all values in range: " + values.toString());
int i = 0;
if (values != null) {
for (List row : values) {
i += 1;
if (row.get(0).equals(selectedBatchID)) {
Log.i(TAG, "IT'S A MATCH! i= " + i);
rangeToUpdate = "A" + (i + 1) + ":E" + (i + 1); //row to be updated
}
}
}
/*once I have the row that needs to be updated, I construct my new ValueRange requestbody and
*execute a values().update(spreadsheetId, rangeToUpdate , requestbody) request.
*/
这其实可以正常工作,但我认为这是一个丑陋的解决方案,我相信还有更好的方法。
我已经阅读了Sheets API文档,并且熟悉了诸如batchUpdateByDataFilter、DataFilterValueRange或DeveloperMetadata等概念,我感觉我应该使用这些功能来实现我的目标,但我无法将它们组合在一起,也找不到任何示例。
有人能向我展示或帮助我理解如何使用这些Sheets V4功能吗?
谢谢。