スキップしてメイン コンテンツに移動

GASでドライブ操作を極める

GASでドライブ操作を極める

GAS連携とドライブ操作の概要

Google Apps Script(GAS)は、Google Workspace のサービスを自動化するための強力なツールです。特に、ドライブ操作に関しては、DriveApp クラスを利用することで、ファイルやフォルダの検索・作成・削除などを簡単に行えます。この記事では、DriveApp を使った基本的な操作方法と、実際に getFilesgetFolders を活用したファイル一覧取得、フォルダ作成、ファイル作成のサンプルコードを紹介します。

ファイル一覧取得とフォルダ作成

まずは、指定したフォルダ内のファイル一覧を取得する方法です。DriveApp.getFolderById(folderId) でフォルダオブジェクトを取得し、getFiles() でファイルの FileIterator を取得します。以下のコードは、フォルダ内の全ファイル名と MIME タイプをコンソールに出力します。

function listFilesInFolder() {
  var folderId = 'YOUR_FOLDER_ID';
  var folder = DriveApp.getFolderById(folderId);
  var files = folder.getFiles();
  while (files.hasNext()) {
    var file = files.next();
    Logger.log('ファイル名: ' + file.getName() + ', MIME: ' + file.getMimeType());
  }
}

次に、フォルダを作成する方法です。createFolder(name) を使うと、指定した名前のフォルダが作成されます。既に同名のフォルダが存在する場合はエラーになるため、事前に getFolders() で確認することが推奨されます。

function createNewFolder() {
  var parentFolder = DriveApp.getRootFolder();
  var folderName = 'NewFolder';
  // 同名フォルダがあるか確認
  var folders = parentFolder.getFoldersByName(folderName);
  if (folders.hasNext()) {
    Logger.log('フォルダは既に存在します。');
    return;
  }
  var newFolder = parentFolder.createFolder(folderName);
  Logger.log('フォルダ作成完了: ' + newFolder.getName());
}

ファイル作成の実装例

最後に、テキストファイルを作成し、フォルダに保存するサンプルです。createFile(name, content, mimeType) を利用します。以下では、JSON 形式のデータをテキストファイルとして保存します。

function createTextFile() {
  var folder = DriveApp.getFolderById('YOUR_FOLDER_ID');
  var fileName = 'sample.json';
  var content = JSON.stringify({name: 'GAS', version: 1.0}, null, 2);
  var mimeType = MimeType.JSON;
  var file = folder.createFile(fileName, content, mimeType);
  Logger.log('ファイル作成完了: ' + file.getName());
}

このように、DriveApp を組み合わせることで、GAS からドライブ上のファイルやフォルダを自在に操作できます。実際の業務で活用する際は、権限設定やエラーハンドリングをしっかり行い、安定したスクリプトを作成してください。

この記事はAIによって作成されました。

コメント