Gemini

【コピペOK】Googleドライブ整理を自動化するGASスクリプト完全ガイド|96個のファイルが一瞬で整列した実体験

あなたのGoogleドライブは、気づけば「ゴミ屋敷」のようになっていませんか?仕事の請求書、子供の学校の資料、いつか読むつもりのPDF、そして大量のスクリーンショット…。必要なファイルを探すのに数分かかり、ストレージ容量は常に圧迫されている…

SHARE
【コピペOK】Googleドライブ整理を自動化するGASスクリプト完全ガイド|96個のファイルが一瞬で整列した実体験

この記事の要点

  • ドライブの「ゴミ屋敷」を放置するリスク
  • なぜ「手作業」ではなく「GAS×AI」なのか
  • 実体験:96個のファイルが一瞬で整列した感動

ドライブの「ゴミ屋敷」を放置するリスク

ドライブの「ゴミ屋敷」を放置するリスク

あなたのGoogleドライブは、気づけば「ゴミ屋敷」のようになっていませんか?仕事の請求書、子供の学校の資料、いつか読むつもりのPDF、そして大量のスクリーンショット…。必要なファイルを探すのに数分かかり、ストレージ容量は常に圧迫されている。そんな状況は、もはや他人事ではありません。

ファイルを整理整頓しないことは、単に見た目が悪いだけでなく、生産性の低下や精神的なストレスに直結します。重要な情報を見つけ出すための時間は、本来もっと創造的な仕事に使えるはずでした。手作業での整理は面倒で、一度は頑張ってもすぐに元通り。この悪循環から抜け出すには、根本的な解決策が必要です。

しかし、もしこの面倒な作業を、AIがあなたの代わりにすべて自動でやってくれるとしたらどうでしょう?本記事では、AI(Claude)が生成したGoogle Apps Script(GAS)を使い、散らかったGoogleドライブを一瞬で、かつ継続的に整理整頓する方法を、無料で使えるコード特典付きで徹底解説します。

なぜ「手作業」ではなく「GAS×AI」なのか

なぜ「手作業」ではなく「GAS×AI」なのか

Googleドライブの整理を謳うツールは、YoomやZapierなどいくつか存在します。しかし、その多くは有料であったり、機能に制限があったりします。なぜ本記事では、それらのツールではなく「GAS」と「AI」の組み合わせを推奨するのでしょうか。

Google Apps Script(GAS)とは、Googleが提供する、JavaScriptをもとにした開発環境で、Googleの各種サービス(ドライブ、スプレッドシート、Gmailなど)を自動化できます。Googleアカウントがあれば無料で使えますが、1回の実行は6分までといった利用上限があります。

比較項目手作業外部ツール(Yoom等)GAS × AI(本記事)
コスト無料(時間的コスト大)無料プランあり(本格利用は有料プラン)完全無料
カスタマイズ性自由だが手間がかかる制限あり無限大
機能基本的な移動・削除のみフォルダ移動が中心ファイル種別仕分け、日付まとめ等
持続性低い(すぐに散らかる)高い非常に高い(定期実行可能)

そして、これまでプログラミングの知識が必要だったGASのコード作成を、AIが代行してくれる時代になりました。つまり、専門知識がなくても、やりたいことを日本語で伝えるだけで、自分だけの自動化ツールが手に入るのです。本記事で提供するスクリプトは、まさにその「GAS×AI」の恩恵を最大限に活用した、高機能かつ実践的なソリューションです。

実体験:96個のファイルが一瞬で整列した感動

6個のファイルが一瞬で整列した感動

論より証拠。筆者自身の体験をお話しさせてください。私のGoogleドライブのルートフォルダは、まさにカオスでした。昔の資格試験の過去問PDF、不動産契約の関連書類、仕事で受け取った請求書、そして大量の画像ファイル…。合計96個ものファイルやフォルダが、何の脈絡もなく散乱していました。

私のGoogleドライブのルートフォルダ

「いつか整理しよう」と思いながらも、その手間を考えると気が重く、見て見ぬふりを続けていました。しかし、今回ご紹介するスクリプトを実行した瞬間、魔法のような光景が広がりました。

実行ボタンをクリックして、わずか数秒。

あれほど雑然としていた96個のアイテムが、まるで意思を持ったかのように、それぞれの居場所へと吸い込まれていったのです。

  • PDFファイルはすべて「📁 02_PDF資料」へ
  • 画像ファイルは「📁 01_画像ファイル」へ
  • 「2023年10月」といった過去のフォルダは「📁 過去ログ_日付まとめ」へ
  • 「プロジェクト」という名前のついたフォルダは「📁 完了済みプロジェクト」へ

これまで3時間以上かかると諦めていた作業が、たったの5分(スクリプトの準備時間含む)で完了し、完璧に整理されたドライブが目の前に現れたのです。この時の感動と解放感は、言葉では言い表せません。あなたにも、ぜひこの体験を味わっていただきたいのです。

スクリプトで簡単に整理ができた

【コピペOK】Googleドライブ自動整理スクリプト(汎用版)

【コピペOK】Googleドライブ自動整理スクリプト(汎用版)

お待たせしました。こちらが、筆者の環境で劇的な効果を上げた「Googleドライブ自動整理スクリプト」の汎用版です。誰でも安全に使えるようにカスタマイズしています。

このスクリプトの主な機能は以下の通りです。

  • ファイル種別仕分け: 画像、PDF、スプレッドシートなどを自動で専用フォルダに移動します。
  • 日付フォルダまとめ: 「2024年1月」のような年月で作成されたフォルダを、一つのログフォルダにまとめます。
  • カスタムルール: 「プロジェクト」など、特定のキーワードを含むフォルダを任意の場所に移動できます。
  • ドライラン(テスト実行)機能: いきなりファイルを移動させるのではなく、まずはログで「どのファイルがどこに移動するか」を確認できる安全設計です。
// ============================================================
//  Google Drive ルートフォルダ自動整理スクリプト(汎用版)
//  ※ファイル種別仕分け + 日付まとめ + カスタムルール
// ============================================================
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
//  設定エリア:ここを自分の好きな名前に書き換えてください
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
var FOLDER_RULES = [
  // 年月フォルダ(例:2023年10月)をまとめる
  {
    folderName: "📁 過去ログ_日付まとめ",
    matchType: "regex",
    pattern: "^\\d{4}年\\d{1,2}月$",
    description: "年月フォルダの整理"
  },
  // 特定のキーワードを含むフォルダをまとめる(例:プロジェクト、企画)
  {
    folderName: "📁 完了済みプロジェクト",
    matchType: "contains",
    pattern: "プロジェクト",
    description: "キーワード「プロジェクト」を含むフォルダ"
  }
];
// MIMEタイプ(ファイル形式)ごとの仕分け先
var MIME_TYPE_FOLDERS = {
  "image/jpeg": "📁 01_画像ファイル",
  "image/png":  "📁 01_画像ファイル",
  "application/pdf": "📁 02_PDF資料",
  "application/vnd.google-apps.spreadsheet": "📁 03_スプレッドシート",
  "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "📁 03_スプレッドシート",
  "application/vnd.google-apps.document": "📁 04_ドキュメント",
  "application/vnd.google-apps.presentation": "📁 05_スライド・パワポ",
  "application/zip": "📁 06_圧縮ファイル"
};
var FALLBACK_FILE_FOLDER = "📁 99_その他一時保管";
// スキップしたいフォルダ名(整理対象外)
var SKIP_LIST = [
  "大切な写真", 
  "共有ドライブ"
];
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
//  実行する関数:dryRun(テスト実行)/organizeRootFolder(本番実行)
//  ※ここから下は書き換えずにそのまま使えます
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

// テスト実行:ファイルは動かさず、どこへ移すかをログに出すだけ
function dryRun() {
  organize_(true);
}

// 本番実行:実際にファイルとフォルダを移動する
function organizeRootFolder() {
  organize_(false);
}

function organize_(isDryRun) {
  var root = DriveApp.getRootFolder();
  var label = isDryRun ? "【テスト実行】" : "【本番実行】";
  var managedNames = getManagedFolderNames_();
  var count = 0;

  // 1. マイドライブ直下のファイルを、種類ごとのフォルダへ仕分ける
  var files = root.getFiles();
  while (files.hasNext()) {
    var file = files.next();
    var target = MIME_TYPE_FOLDERS[file.getMimeType()] || FALLBACK_FILE_FOLDER;
    Logger.log(label + " ファイル「" + file.getName() + "」→ " + target);
    if (!isDryRun) {
      file.moveTo(getOrCreateFolder_(root, target));
    }
    count++;
  }

  // 2. マイドライブ直下のフォルダを、ルールに沿ってまとめる
  var folders = root.getFolders();
  while (folders.hasNext()) {
    var folder = folders.next();
    var name = folder.getName();
    if (managedNames.indexOf(name) !== -1) continue; // 仕分け先のフォルダ自身は動かさない
    if (SKIP_LIST.indexOf(name) !== -1) continue;    // 整理の対象外
    var rule = findRule_(name);
    if (!rule) continue;
    Logger.log(label + " フォルダ「" + name + "」→ " + rule.folderName + "(" + rule.description + ")");
    if (!isDryRun) {
      folder.moveTo(getOrCreateFolder_(root, rule.folderName));
    }
    count++;
  }

  Logger.log(label + " 移動の対象は " + count + " 件でした。");
}

// フォルダ名に合うルールを探す
function findRule_(name) {
  for (var i = 0; i < FOLDER_RULES.length; i++) {
    var rule = FOLDER_RULES[i];
    if (rule.matchType === "regex" && new RegExp(rule.pattern).test(name)) return rule;
    if (rule.matchType === "contains" && name.indexOf(rule.pattern) !== -1) return rule;
  }
  return null;
}

// 仕分け先として使うフォルダ名の一覧
function getManagedFolderNames_() {
  var names = [FALLBACK_FILE_FOLDER];
  for (var mime in MIME_TYPE_FOLDERS) names.push(MIME_TYPE_FOLDERS[mime]);
  FOLDER_RULES.forEach(function (rule) { names.push(rule.folderName); });
  return names;
}

// 指定した名前のフォルダを返す(なければ作る)
function getOrCreateFolder_(parent, name) {
  var it = parent.getFoldersByName(name);
  return it.hasNext() ? it.next() : parent.createFolder(name);
}

スクリプトの導入手順(5分で完了)

スクリプトの導入手順(5分で完了)

このスクリプトの導入は、驚くほど簡単です。プログラミングの経験は一切不要。以下の手順に従って、5分で設定を完了させましょう。

  1. Googleスプレッドシートを新規作成: まず、Googleドライブで新しいスプレッドシートを開きます。
  2. スクリプトエディタを開く: メニューバーから「拡張機能」>「Apps Script」を選択します。
  3. コードを貼り付け: 開いたエディタに、上記で提供したスクリプトの全文をコピー&ペーストします。既存のコードはすべて削除してから貼り付けてください。
  4. プロジェクトを保存: フロッピーディスクのアイコンをクリックして、プロジェクトに名前(例:「ドライブ整理スクリプト」)を付けて保存します。
  5. 初回実行と権限承認: ▶︎(実行)ボタンの左にある関数選択ボックスで organizeRootFolder を選択し、
    ▶︎ボタンをクリックします。
    初回のみ「承認が必要です」というダイアログが表示されるので、画面の指示に従ってアカウントを選択し、「詳細」→「(安全でないページに移動)」→「許可」と進んでください。これは、スクリプトがあなたのドライブを操作するための許可です。内容を確認したスクリプトだけを許可するようにしてください。
  6. ドライランで動作確認: まずは安全な「テスト実行」から始めましょう。関数選択ボックスで dryRun を選択し、▶︎ボタンをクリックします。実行後、画面下部に自動で表示される「実行ログ」を確認し、ファイルが意図通りに分類されるかチェックします。問題なければ、いよいよ本番です!

カスタマイズ方法:自分の環境に合わせる

カスタマイズ方法:自分の環境に合わせる

このスクリプトの真価は、その高いカスタマイズ性にあります。コード内の「設定エリア」を少し書き換えるだけで、あなたの使い方に完全にフィットした自動整理ツールへと進化します。

  • ファイル種別を追加したい: MIME_TYPE_FOLDERS に、新しいファイル形式とその移動先フォルダを追加します。(例:”video/mp4″: “📁 07_動画ファイル”`)
  • 新しいフォルダールールを作りたい: FOLDER_RULES に、新しいルールオブジェクトを追加します。例えば、「請求書」というキーワードを含むフォルダをまとめたい場合は、以下のように追記します。
  {
    folderName: "📁 経理関連_請求書",
    matchType: "contains",
    pattern: "請求書",
    description: "キーワード「請求書」を含むフォルダ"
  }
  • 整理対象外のフォルダを指定したい: SKIP_LIST に、整理の対象から外したいフォルダ名を追加します。大切なプロジェクトのフォルダなどを誤って移動させないために活用してください。

よくある質問(FAQ)

Q. スクリプトの実行にはどのくらい時間がかかりますか?

A. ファイル数によりますが、100ファイル程度であれば10秒〜30秒ほどで完了します。GASの実行時間には6分という上限がありますが、数千ファイル規模でない限り、まず問題になることはありません。

Q. 安全性は大丈夫ですか?ファイルが消えたりしませんか?

A. ご安心ください。このスクリプトは、あなた自身のGoogleアカウント内で動作し、外部にデータが送信されることは一切ありません。また、ファイルの「削除」は行わず、「移動」のみを行います。さらに、本番実行の前に必ず「ドライラン(テスト実行)」でシミュレーションできるため、意図しないファイルの移動を防ぐことができます。

Q. 共有ドライブでも使えますか?

A. このスクリプトは、基本的に「マイドライブ」のルートフォルダを対象としています。共有ドライブを整理したい場合は、スクリプトの改修が必要になります。

Q. エラーが出た時はどうすればいいですか?

A. 画面下部に表示される実行ログを確認し、エラーメッセージを読んでみてください。多くの場合、「フォルダが見つかりません」といった単純な原因です。設定エリアのフォルダ名が、実際にGoogleドライブ上に存在するか確認してください。それでも解決しない場合は、AI(ClaudeやGeminiなど)にエラーメッセージを貼り付けて解決策を尋ねるのが有効です。

まとめ:整理はAIに任せ、人間はクリエイティブな仕事に

まとめ:整理はAIに任せ、人間はクリエイティブな仕事に

Googleドライブの整理という、面倒で時間のかかる作業から解放されるインパクトは絶大です。一度この自動化を体験すれば、もう手作業には戻れないでしょう。

本記事で提供したスクリプトは、あなたのデジタルなワークスペースを常にクリーンに保ち、本来集中すべきクリエイティブな仕事に時間を使うための強力な武器となります。ぜひこの「コード特典」を存分に活用し、生産性の高い毎日を手に入れてください。

次のステップとして、このスクリプトを定期的に自動実行する「トリガー」の設定に挑戦するのも良いでしょう。そうすれば、あなたはもう二度と、ドライブの整理に頭を悩ませることはなくなります。


著者:デジタルレクリム株式会社 代表取締役 | AIマーケティング専門家

中村匠吾(なかむら しょうご)は、デジタルマーケティングとAI活用を専門とする経営者。20代前半からウェブ制作業界でキャリアを積み、デジタルレクリム株式会社を設立。「デジタルの力で企業と顧客を結ぶ」を理念に、AI・ChatGPTを活用したマーケティング手法で企業のDX推進を支援。2024年11月、著書『もしも、Chat-GPTがあなたの仕事の悩みを解決してくれたら ~杏奈と探る、AIとの付き合い方~』(デザインエッグ社)を出版。

著者:デジタルレクリム株式会社 代表取締役 | AIマーケティング専門家をフォローする

コメント

Webとテクノロジーで、
貴社のビジネスを次のステージへ

AI活用・Web制作・SEO・広告運用など、まずはお気軽にご相談ください。

無料相談・お問い合わせ
  • 初回相談無料
  • オンライン対応
  • 貴社に最適なご提案