0

J'utilise le démarrage rapide de l'API Google Sheets pour Python. J'essaie de tirer plusieurs cellules, juste une cellule à la fois, de l'API Google feuilles et de brancher chaque valeur dans un document texte. Je l'ai fait avec spreadsheets().values().get(), mais je tape trop sur l'API et la méthode batchGet() semble que ce serait mieux. J'ai lu l'API Google Sheets v4 mais n'a pas pu trouver la mise en forme correcte pour le paramètre ranges sur spreadsheets().values().batchGet(). D'après les docs, il apparaît qu'il faut un tableau de chaînes, ou éventuellement un objet JSON, mais il n'y a pas d'exemple de format dans les docs (en fait, il est dit // TODO)! Est-ce que quelqu'un sait le format correct? J'ai essayé:Corriger le format de l'attribut `ranges` sur les feuilles de calcul(). Values ​​(). BatchGet() Google feuilles API

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

et

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

et juste une chaîne pour être sûr

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

Chacun de ces retours []. Lorsque j'utilise spreadsheets().values().get() et ranges="A100:A100, la fonction retourne [['cellvalue']], donc je sais qu'il y a des données là-bas.

Des pensées?

Répondre

0

Vous pouvez vérifier dans cet link l'exemple de code en utilisant batchGet.

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

Depuis ranges est le A1 notation des valeurs à récupérer, ceci est une chaîne comme Sheet1!A1:B2 qui fait référence à un groupe de cellules dans la feuille de calcul, et est généralement utilisé dans les formules.

Par exemple, les gammes valides sont:

  • Sheet1!A1:B2 se réfère aux deux premières cellules dans les deux premières rangées de Sheet1.
  • Sheet1!A:A fait référence à toutes les cellules de la première colonne de Sheet1.
  • Sheet1!1:2 fait référence à toutes les cellules des deux premières rangées de Sheet1.
  • Sheet1!A5:A fait référence à toutes les cellules de la première colonne de la feuille 1, à partir de la rangée 5.
  • A1:B2 fait référence aux deux premières cellules dans les deux premières rangées de la première feuille visible.
  • Sheet1 fait référence à toutes les cellules de Sheet1.

Les plages nommées sont également prises en charge. Lorsqu'une plage nommée est en conflit avec le nom d'une feuille, la plage nommée est préférée.

Si le nom de la feuille comporte des espaces ou commence par un support, entourent le nom de la feuille avec des guillemets simples ('), 'Sheet One'!A1:B2 par exemple. Par souci de simplicité, il est toujours possible d'entourer le nom de la feuille de guillemets simples.