新しいGoogleスプレッドシートAPI v4の値を持つ最後の行を取得するにはどうすればよいですか?GoogleスプレッドシートAPI v4 - 値の最後の行を取得するにはどうすればよいですか?
私はシートから範囲を取得するためにこれを使用する:
mService.spreadsheets().values().get("ID_SHEET", "Sheet1!A2:B50").execute();
シートに値を持つ最後の行を検出する方法?
新しいGoogleスプレッドシートAPI v4の値を持つ最後の行を取得するにはどうすればよいですか?GoogleスプレッドシートAPI v4 - 値の最後の行を取得するにはどうすればよいですか?
私はシートから範囲を取得するためにこれを使用する:
mService.spreadsheets().values().get("ID_SHEET", "Sheet1!A2:B50").execute();
シートに値を持つ最後の行を検出する方法?
範囲を「A2:D」に設定すると、シートの最後のデータ行までフェッチされます。
あなたはそうする必要はありません。すべての行がその中に配置されることを保証するために、巨大な範囲(たとえば、A2:D5000
)を設定します。それ以上のインパクトがあるかどうかは分かりませんが、メモリ消費量が増えているかもしれませんが、今は問題ありません。
private List<String> getDataFromApi() throws IOException {
String spreadsheetId = "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms";
String range = "A2:D5000";
List<String> results = new ArrayList<String>();
ValueRange response = this.mService.spreadsheets().values()
.get(spreadsheetId, range)
.execute();
List<List<Object>> values = response.getValues();
if (values != null) {
results.add("Name, Major");
for (List row : values) {
results.add(row.get(0) + ", " + row.get(3));
}
}
return results;
}
ループfor (List row : values)
を見てください。テーブルに2つの行がある場合は、values
リストに2つの要素が表示されます。
A、B、C、Dの最後の値を見つけるのに "A2:D"を指定するだけで、大きな制限を設定する必要はありません。 –
そうですよ!ありがとう!私は十分な経験がありませんでした:) – yurart
現在のスプレッドシートの合計行数をカウントすることでそれを得ることができました。 次に、次の行にデータを追加します。
rowcount = this.mService.spreadsheets().values().get(spreadsheetId, range).execute().getValues().size()
はい、ありがとう! – seba123neo