earthpg:GAS専門のプログラミングスクール

Google Apps Scriptで簡単!共有ドライブのIDを取得する方法

僕、GASでの共有ドライブのID取得がわからなくて困ってるんです。どうすればいいのかな?
猫男
猫男
catman
catman
よし、catmanが「GASで共有ドライブIDを取得する方法」を教えてやろう。基本を押さえれば簡単だぞ。

GASで共有ドライブのIDを取得する方法

さて、共有ドライブIDを取得するためのコードを書くぞ。

1. 共有ドライブ一覧を取得する

まずは、利用可能なすべての共有ドライブを取得して、その中から特定のドライブを見つける。


function listSharedDrives() {
 var drives = Drive.Drives.list().items;
 for (var i = 0; i < drives.length; i++) {
 Logger.log("Drive Name: " + drives[i].name + ", Drive ID: " + drives[i].id);
 }
}

このコードではDrive.Drives.list()メソッドを使用して、すべての共有ドライブを取得している。

その後、itemsプロパティで各ドライブの名前とIDをログに出力する。

このコードを実行すれば、すべての共有ドライブが表示されるんですね。IDも一緒に確認できるなんて便利です!
猫男
猫男

2. 特定の共有ドライブIDを取得する

次に特定の名前の共有ドライブIDを取得する方法を見てみよう。


function getDriveIdByName(driveName) {
 var drives = Drive.Drives.list().items;
 for (var i = 0; i < drives.length; i++) {
 if (drives[i].name === driveName) {
 Logger.log("Found Drive ID: " + drives[i].id);
 return drives[i].id;
 }
 }
 Logger.log("Drive not found.");
 return null;
}

このスクリプトでは、driveNameを引数として受け取り、指定した名前の共有ドライブIDを探し出す。

見つからなければ、「Drive not found.」とログに出力し、nullを返すしくみだ。

練習問題

次のコードを変更して、「Finance」という名前の共有ドライブが存在するか確認し、そのIDを取得する機能を追加してみよう。


function checkFinanceDrive() {
 // ここにコードを追加
}

 

 

解答・解説

以下のスクリプトを使って、「Finance」ドライブの取得ができるようになる。


function checkFinanceDrive() {
 var drives = Drive.Drives.list().items;
 for (var i = 0; i < drives.length; i++) {
 if (drives[i].name === "Finance") {
 Logger.log("Finance Drive ID: " + drives[i].id);
 return drives[i].id;
 }
 }
 Logger.log("Finance Drive not found.");
 return null;
}

このスクリプトは、共有ドライブの一覧を取得し、「Finance」の名前を持つドライブを探す仕組みだ。

見つかればFinance Drive IDとしてログに出力される。見つからない場合は「Finance Drive not found.」と出力される仕組みになっている。

これで共有ドライブのIDを取得する方法がわかりました!本当にありがとうございます、catmanさん!
猫男
猫男
catman
catman
いい勉強になったようだな。これでGASを使った作業がもっと捗ること間違いなしだ。