2012-07-05 21 views

risposta

16

L'ID (chiave) del foglio di calcolo è nella URL (la parte tra key = e # gid =). È possibile recuperare con GAS utilizzando qualcosa di simile:

function getId() { 
    Browser.msgBox('Spreadsheet key: ' + SpreadsheetApp.getActiveSpreadsheet().getId()); 
} 

nota, spesso si otterrà una stringa totalmente diverso con ogni metodo, ma entrambi dovrebbero funzionare lo stesso.

+1

Ottimo .. Funziona benissimo ora –

+2

Qualche idea su cosa sia il #gid? –

+1

@ClickUpvote è l'ID del foglio. Usa se vuoi scaricare come HTML/PDF/CSV ecc. – eddyparkinson

3

Ricordare che la funzione getId() da un oggetto Foglio di calcolo restituisce un ID diverso rispetto a getId() dall'oggetto File, anche se il File (gestito da DriveApp) è lo stesso foglio di calcolo.

In ogni caso, se apri un file da DriveApp utilizzando l'id fornito dal foglio di calcolo, otterrai l'oggetto File corretto, restituendo - con getId() - l'id "File", che è diverso da quello che usato per aprire il file.

Sembra confuso, ma funziona così. Ho avuto alcuni problemi in alcuni script provenienti da questo id "doppio" per la stessa cosa.

+0

Google Drive SDK non è più in grado di aprire file utilizzando l'id: SpreadsheetApp .getActiveSpreadsheet(). getId() vedere: https://code.google.com/p/google-api-java-client/issues/detail?id=859&can=4&colspec=Milestone%20Priority%20Component%20Type%20Summary% 20ID% 20Status% 20Owner – eddyparkinson

Problemi correlati