web-dev-qa-db-ja.com

Google Apps Scriptを介してGoogleスプレッドシートのIDを取得するにはどうすればよいですか?

Googleスプレッドシートを1つ作成しましたが、そのスプレッドシートのIDを見つけたいと思います。 Googleで検索しようとしましたが、成功しませんでした。

アクティブなスプレッドシートのスプレッドシートIDを取得できる方法/スクリプトを教えてください。

ありがとう

9
user1487669

スプレッドシートのID(キー)はURL(key =と#gid =の間の部分)にあります。次のようなものを使用して、GASで取得できます。

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

多くの場合、メソッドごとにまったく異なる文字列を取得しますが、どちらも同じように機能するはずです。

17
AdamL

(DriveAppから管理されている)ファイルが同じスプレッドシートであっても、SpreadsheetオブジェクトのgetId()関数はFileオブジェクトのgetId()とは異なるIDを返すことに注意してください。

とにかく、スプレッドシートで提供されたIDを使用してDriveAppからファイルを開くと、正しいFileオブジェクトが取得され、getId()を使用して「File」IDが返されます。これは、ファイル。

紛らわしいようですが、うまくいきます。同じことについて、この「double」IDから来るいくつかのスクリプトでいくつかの問題がありました。

3
Massimo Coletti

シートはの間に存在します
dおよびeditのスプレッドシートURL。
例-:シートのURLが

https://docs.google.com/spreadsheets/d/1rV2_S2q5rcakOuHs2E1iLeKR2floRIozSytAt2iRXo8/edit#gid=0

シートIDは

1rV2_S2q5rcakOuHs2E1iLeKR2floRIozSytAt2iRXo8

詳細については、 google sheet api公式ドキュメント にアクセスしてください。

0