Google Apps Scriptで簡単!共有ドライブのIDを取得する方法
僕、GASでの共有ドライブのID取得がわからなくて困ってるんです。どうすればいいのかな?

猫男

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
いい勉強になったようだな。これでGASを使った作業がもっと捗ること間違いなしだ。