0

私はPython用のGoogleスプレッドシートクイックスタートを使用しています。私は複数のセル、一度に1つのセル、Googleシートapiからプルし、テキストドキュメントに各値を接続しようとしています。私はspreadsheets().values().get()でこれをやってきましたが、APIをあまりにも叩いてしまいました。そして、batchGet()メソッドはそれが良いと思われます。 GoogleスプレッドシートAPI v4を読み終えましたが、spreadsheets().values().batchGet()rangesパラメータの正しい書式設定が見つかりませんでした。ドキュメントによると、それは文字列の配列、またはおそらくJSONオブジェクトを取りますが、ドキュメントの形式の例はありません(実際には// TODOと書かれています)!誰かが正しい形式を知っていますか?私が試した:スプレッドシート(​​)。values()の `ranges`属性の正しい書式batchGet()GoogleシートAPI

spreadsheetId = 098217340987123049817235blahblahblah 
ranges = ["A100:A100, "B100:B100"] 
spreadsheets().values().batchGet(spreadsheetId=spreadsheetId, ranges=ranges) 

spreadsheetId = 098217340987123049817235blahblahblah 
ranges = ["A100:A100"] 
spreadsheets().values().batchGet(spreadsheetId=spreadsheetId, ranges=ranges) 

と単なる文字列をこれらのリターン[]

spreadsheetId = 098217340987123049817235blahblahblah 
ranges = "A100:A100" 
spreadsheets().values().batchGet(spreadsheetId=spreadsheetId, ranges=ranges) 

それぞれ確認します。

spreadsheets().values().get()ranges="A100:A100を使用すると、関数は[['cellvalue']]を返します。データがあることがわかります。

どのような考えですか?

答えて

0

このlinkのサンプルコードをbatchGetでチェックインすることができます。 rangesので

spreadsheetId = '1SizdeufKaODnq3WMV3T3uS2W47v4mZJeqYg2J1MiP9k' 
rangeName = 'Sheet1!A2:A' 
result = service.spreadsheets().values().get(spreadsheetId=spreadsheetId, range=rangeName).execute() 

が取得する値のA1 notationであり、これは、スプレッドシート内のセルのグループを指し、典型的には、式で使用されてSheet1!A1:B2ような文字列です。例えば

、有効範囲は、次のとおり

  • Sheet1!A1:B2は、シート1の上部の2つの列の最初の2個の細胞を指します。
  • Sheet1!A:Aは、Sheet1の第1列のすべてのセルを参照します。
  • Sheet1!1:2は、Sheet1の最初の2つの行のすべてのセルを指します。
  • Sheet1!A5:Aは、シート1の第1欄の5番目以降の全てのセルを指す。
  • A1:B2は、第1の可視シートの上2列の最初の2つのセルを指す。
  • Sheet1は、Sheet1のすべてのセルを指します。

名前付きの範囲もサポートされています。名前付き範囲がシート名と衝突する場合は、名前付き範囲が優先されます。

シート名にスペースまたは括弧で始まる場合は、シート名を一重引用符(')で囲みます(例:'Sheet One'!A1:B2)。簡単にするために、シート名を一重引用符で囲むことは常に安全です。

関連する問題