web-dev-qa-db-ja.com

Sheets API v4でGoogleスプレッドシート全体を読むJava

Javaクイックスタートに記載されているようなGoogleスプレッドシートを読みたい

https://developers.google.com/sheets/quickstart/Java

クイックスタートでは、特定の範囲からデータを読み取る方法を説明しています

.....
String range = "Class Data!A2:E";
ValueRange response = service.spreadsheets().values()
        .get(spreadsheetId, range)
        .execute();

List<List<Object>> values = response.getValues();
....

しかし、スプレッドシートの範囲がわからないという問題があります。列の数は変更できます。たとえば、範囲を知らなくても、たとえばシートのすべてのデータをどのように読み取ることができますか?

よろしく

マイケル

16
Michael Meyer

Class Dataという名前のシートの場合、シート全体を次のように指定できます:String range = "Class Data";spreadsheets.values.getリファレンスの Try it の部分で出力を確認できます。

43
Bardy

スプレッドシートIDではなく(URLから取得可能)データを取得したいがシート名を取得したくない場合は、次のコードスニペットが役立つ場合があります。スプレッドシートの下にあるすべてのシート名を印刷します。印刷ステートメントを必要なものに変更できます。

spreadsheet = service.spreadsheets().get(spreadsheetId=SHEET_ID, includeGridData=True).execute()
    for sheet in spreadsheet['sheets']:
        print(sheet['properties']['title'])

0
Yaman Malkoç