GAS(Google Apps Script)はさまざまなGoogleサービスと連携でき、多くの作業を自動化できます。しかし実際に実装しようと思うと、どのような「クラス(class)」や「関数(function)」、「メソッド(method)」が用意されているのか分からず、苦戦している人も多いのではないでしょうか?
そこで今回は「GAS(Google Apps Script)の関数・メソッド一覧」というテーマで解説します。
DriveAppクラス
getFileByIdメソッド
このメソッドは、指定したIDのファイルオブジェクトを取得します。ファイルの内容を読み取ったり、ファイルに対して操作を行いたい場合に使用します。以下のコードは、特定のファイルIDを指定してそのファイルの名前をログに出力する例です。
function logFileNameById(fileId) {
var file = DriveApp.getFileById(fileId);
Logger.log(file.getName());
}
getFolderByIdメソッド
指定したIDのフォルダオブジェクトを生成するために使用します。このメソッドは、特定のフォルダ内でファイル操作を行う際に便利です。以下のコードスニペットは、特定のフォルダIDを使ってフォルダ内の全ファイルの名前をログに出力する方法を示しています。
function logFilesInFolder(folderId) {
var folder = DriveApp.getFolderById(folderId);
var files = folder.getFiles();
while (files.hasNext()) {
var file = files.next();
Logger.log(file.getName());
}
}
getRootFolderメソッド
Google Driveのルートレベルのフォルダーオブジェクトを取得します。このメソッドは、ドライブの最上位レベルで作業を始めたい場合に使用します。以下は、ルートフォルダ内のすべてのファイルとフォルダの名前をログに出力する例です。
function logAllInRoot() {
var rootFolder = DriveApp.getRootFolder();
var files = rootFolder.getFiles();
while (files.hasNext()) {
var file = files.next();
Logger.log(file.getName());
}
var folders = rootFolder.getFolders();
while (folders.hasNext()) {
var folder = folders.next();
Logger.log(folder.getName());
}
}
Folderクラス
addFileメソッド
フォルダにファイルを追加するために使用します。例えば、既存のファイルを新しいフォルダに移動する場合に便利です。以下のコードは、特定のファイルを特定のフォルダに追加する方法を示しています。
function addFileToFolder(fileId, folderId) {
var file = DriveApp.getFileById(fileId);
var folder = DriveApp.getFolderById(folderId);
folder.addFile(file);
}
Fileクラス
getBlobメソッド
getBlob
メソッドは、ファイルの内容をBlobオブジェクトとして取得します。このオブジェクトを使用して、ファイルのデータを他のサービスへ送信したり、ファイルを加工する際に使用します。以下は、ファイルのBlobを取得し、そのサイズをログに出力する例です。
function logFileSize(fileId) {
var file = DriveApp.getFileById(fileId);
var blob = file.getBlob();
Logger.log(blob.getBytes().length);
}
getNameメソッド
getName
メソッドは、ファイルの名前を取得します。ファイルを識別する際や、ユーザーにファイル情報を表示する際に役立ちます。以下のコードは、ファイルIDを使用してファイル名を取得し、ログに出力する方法を示しています。
function logFileName(fileId) {
var file = DriveApp.getFileById(fileId);
Logger.log(file.getName());
}
getUrlメソッド
getUrl
メソッドは、ファイルのURLを取得します。これにより、ファイルへの直接リンクを生成したり、ウェブページに埋め込んだりすることが可能になります。以下は、ファイルのURLを取得し、ログに出力する例です。
function logFileUrl(fileId) {
var file = DriveApp.getFileById(fileId);
Logger.log(file.getUrl());
}