—
## 導入文
「ダウンロードフォルダが毎月カオスになる」「スキャンしたPDFが全部同じフォルダに積み上がる」「月末に書類を月別フォルダへ手動で移動するのが恒例になっている」
フォルダ整理は「やればきれいになる」のはわかっているのに、続かない。私も総務業務でスキャン後のファイルが毎週山積みになり、月末に一気に手動整理するという負のルーティンが1年以上続いていました。
この記事では、**フォルダ整理を自動化するための4つの方法と、自動化前に必ず必要な「整理ルールの設計」**を解説します。ノーコードで今日から始める方法も、Pythonで完全自動化する方法もあります。
—
## 結論:どの方法を選ぶか
| 方法 | 難易度 | コード不要 | ローカルPC | クラウド | 向いているケース |
|—|—|—|—|—|—|
| ①タスクスケジューラ+バッチ | ★★☆ | △ | ✅ | ✕ | 定時に自動整理・Windows環境 |
| ②Power Automate | ★☆☆ | ✅ | ✅ | ✅ | M365環境・Teamsと連携 |
| ③Yoom / Make | ★☆☆ | ✅ | ✕ | ✅ | Google Drive中心・ノーコード |
| ④Python watchdog | ★★★ | ✕ | ✅ | ✕ | リアルタイム監視・完全自動化 |
—
## 「フォルダ整理の自動化」でできること・できないこと
### できること
– 特定フォルダに保存されたファイルを、条件に基づいて別フォルダへ自動移動
– 拡張子・ファイル名のキーワード・更新日・サイズによる振り分け
– 月別・年別フォルダへの定期的な自動移動(月次アーカイブ)
– スキャンフォルダやダウンロードフォルダの自動クリーンアップ
### できないこと・注意点
– **ファイルの中身を読んで分類すること**(AIを使えば一部可能だが設定が複雑)
– **命名規則が統一されていないファイルの完全自動整理**(整理ルール設計が前提)
– **自動化が壊れていても気づかない問題**(エラー通知の設定が必須)
—
## まず「整理ルール」を設計する(自動化前の必須ステップ)
自動化の前に「何をどこに移動するか」のルールを決めないと、自動化が混乱の元になります。5分でいいので、先にルールを書き出してください。
### 振り分け条件の種類
| 条件の種類 | 例 |
|—|—|
| 拡張子 | `.pdf` → 書類フォルダ、`.xlsx` → Excelフォルダ |
| ファイル名キーワード | 「請求書」を含む → 経理フォルダ |
| 更新日 | 30日以上前のファイル → アーカイブフォルダ |
| ファイルサイズ | 50MB以上 → 大容量フォルダ |
| 作成元フォルダ | スキャンフォルダ内のPDF → デジタル化済みフォルダ |
### ルール設計テンプレート
“`
【対象フォルダ】: C:\Users\user\Downloads
【振り分けルール】:
条件1: .pdf かつ「請求書」を含む → C:\業務\経理\請求書\2026年
条件2: .pdf かつ「契約書」を含む → C:\業務\契約書\2026年
条件3: .xlsx → C:\業務\Excelファイル
条件4: 30日以上前のファイル → C:\アーカイブ
条件5: 上記に当てはまらない → C:\要確認(自動整理しない)
“`
**「上記に当てはまらないファイルは自動移動しない」というルールを必ず作ってください。** 予期せぬファイルまで移動してしまうのが最大の事故原因です。
—
## 【方法①】Windowsタスクスケジューラ+バッチファイル
**難易度:★★☆ / ローカルPC / 追加費用なし**
バッチファイル(.bat)で移動処理を書き、タスクスケジューラで定時実行させる方法です。「毎朝9時にダウンロードフォルダのPDFを書類フォルダへ移動」のような定時処理に向いています。
### バッチファイルの作成
メモ帳を開いて以下を入力し、`organize.bat` として保存:
“`bat
@echo off
set SRC=C:\Users\user\Downloads
set DST=C:\業務\書類
rem PDFを書類フォルダへ移動
for %%f in (“%SRC%\*.pdf”) do (
move “%%f” “%DST%\”
echo 移動: %%f
)
rem Excelファイルを別フォルダへ移動
set DST_XL=C:\業務\Excelファイル
for %%f in (“%SRC%\*.xlsx”) do (
move “%%f” “%DST_XL%\”
)
echo 完了
“`
### タスクスケジューラへの登録
1. Windowsキー → 「タスクスケジューラ」を検索して起動
2. 「基本タスクの作成」→ タスク名を入力(例:ファイル自動整理)
3. トリガー:「毎日」→ 時刻を設定(例:9:00)
4. 操作:「プログラムの開始」→ バッチファイルのパスを指定
5. 完了 → 手動実行でテスト
### 向いているシーン
– 毎朝・毎週決まった時間にフォルダを整理したい
– クラウドを使わずローカルPCだけで完結させたい
—
## 【方法②】Power Automate(Office365付帯・ノーコード)
**難易度:★☆☆ / M365付帯で追加費用なし**
Microsoft 365環境であればPower Automateが無料で使えます。OneDriveやSharePointのファイルを自動整理するのに最も使いやすい方法です。
### 「新しいファイルが保存されたら自動振り分け」フローの手順
1. Power Automateにサインイン(`powerautomate.microsoft.com`)
2. 「作成」→「自動化クラウドフロー」
3. トリガー:「SharePoint – ファイルが作成されたとき」または「OneDrive – ファイルが作成されたとき」
4. 条件アクションを追加:「ファイル名に〇〇が含まれる場合」
5. アクション:「ファイルの移動」で移動先フォルダを指定
6. テスト実行で確認 → オンにして本番運用
### 向いているシーン
– OneDrive・SharePointでチーム共有しているフォルダを整理したい
– Teamsに届いた添付ファイルを自動でフォルダ振り分けしたい
– M365環境で追加コストゼロで実現したい
—
## 【方法③】Yoom / Make(ノーコード・Google Drive中心)
**難易度:★☆☆ / 無料プランあり**
Google Driveを中心に使っている環境向け。ファイルが特定フォルダに追加されたとき、ファイル名や種別に応じて自動移動・フォルダ作成ができます。
### Yoomで「Google Driveのファイルを自動振り分け」する手順
1. Yoomに無料登録 → Google Driveを連携
2. 「フロー作成」→ トリガー:「Google Drive – ファイルが追加されたとき」
3. 条件分岐アクションを追加:「ファイル名に〇〇が含まれる場合」
4. アクション:「Google Drive – ファイルを移動する」で移動先を指定
5. フローをONにして完了
### Makeの場合
Makeも同様にGoogle Drive連携が可能です。月1,000オペレーションまで無料で使えます。複数の条件分岐が必要な複雑なフローはMakeの方が設計しやすい傾向があります。
### 向いているシーン
– Google Driveのスキャンフォルダを自動整理したい
– チームで共有しているドライブのファイルを自動振り分けしたい
– コードを一切書きたくない
—
## 【方法④】Python watchdog(リアルタイム監視・完全自動化)
**難易度:★★★ / 追加費用なし**
Pythonのwatchdogライブラリを使うと、フォルダの変化をリアルタイムで監視し、ファイルが追加された瞬間に自動移動処理を実行できます。タスクスケジューラとは異なり「ファイルが保存された直後に動く」点が特徴です。
### インストール
“`bash
pip install watchdog
“`
### コード:フォルダ監視→自動振り分け
“`python
import time
import shutil
from pathlib import Path
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
# 設定
WATCH_FOLDER = Path(r”C:\Users\user\Downloads”)
RULES = {
“.pdf”: Path(r”C:\業務\書類”),
“.xlsx”: Path(r”C:\業務\Excelファイル”),
“.jpg”: Path(r”C:\業務\画像”),
}
UNCATEGORIZED = Path(r”C:\業務\要確認”)
class FileOrganizer(FileSystemEventHandler):
def on_created(self, event):
if event.is_directory:
return
src = Path(event.src_path)
time.sleep(1) # ファイル書き込み完了を待つ
dest_folder = RULES.get(src.suffix.lower(), UNCATEGORIZED)
dest_folder.mkdir(parents=True, exist_ok=True)
dest = dest_folder / src.name
shutil.move(str(src), str(dest))
print(f”移動: {src.name} → {dest_folder}”)
if __name__ == “__main__”:
observer = Observer()
observer.schedule(FileOrganizer(), str(WATCH_FOLDER), recursive=False)
observer.start()
print(f”監視開始: {WATCH_FOLDER}”)
try:
while True:
time.sleep(5)
except KeyboardInterrupt:
observer.stop()
observer.join()
“`
### バックグラウンド常駐させる(Windowsの場合)
上記のPythonスクリプトをタスクスケジューラで「ログオン時に実行」に設定すれば、PC起動後は常時バックグラウンドで動き続けます。
### 向いているシーン
– ファイルが保存された瞬間にリアルタイムで自動整理したい
– 毎月・毎週の定期処理ではなく、常時監視が必要
– 複数の条件を柔軟に設定したい
—
## 業務シーン別おすすめ設定例
### シーン1:スキャンフォルダの自動整理
スキャン後のPDFが1つのフォルダに溜まる問題を解決。
**設定例(Yoom / Power Automate):**
– トリガー:スキャンフォルダにPDFが追加されたとき
– 条件:ファイル名に「請求書」→ 経理フォルダへ移動
– 条件:ファイル名に「契約書」→ 契約書フォルダへ移動
– それ以外:「要確認」フォルダへ移動
### シーン2:ダウンロードフォルダの月次クリーンアップ
**設定例(タスクスケジューラ+バッチ):**
– 毎月1日の9:00に実行
– 前月のファイルを「アーカイブ/2026年3月」フォルダへ移動
### シーン3:共有ドライブの書類整理(チーム向け)
**設定例(Power Automate):**
– SharePointの特定ライブラリにファイルが追加されたとき
– ファイル名・種別に応じて自動でサブフォルダへ振り分け
– 整理完了をTeamsに通知
—
## 自動化後の運用・メンテナンスのポイント
### エラー通知を設定する
自動化は「壊れても気づかない」リスクがあります。
– **Power Automate / Yoom**:フロー失敗時のメール通知を設定
– **バッチファイル**:実行ログをテキストファイルに書き出す
– **Python watchdog**:エラー発生時にメール送信するtry/exceptを追加
### 週1回の確認習慣
「要確認」フォルダに溜まったファイルを週1回確認し、ルールに追加するかどうかを判断します。自動化のルールは育てるものです。
### 3ヶ月に1回のルール見直し
業務の変化に合わせてルールを更新してください。扱う書類の種類が増えたり、フォルダ構成が変わったりした場合に放置すると「要確認」フォルダに全ファイルが溜まる事態になります。
—
## よくある失敗と対処法
### 失敗1:条件が重複して同じファイルが2回移動処理された
→ 条件の優先順位を明確にし、先にマッチした条件で処理を止める設計にする(if-else方式)。
### 失敗2:移動先フォルダが存在せずエラーになった
→ コードには `mkdir(exist_ok=True)` を必ず入れる。Power Automateでは移動前に「フォルダの作成」アクションを追加。
### 失敗3:ファイルが書き込み中に移動されてファイルが壊れた
→ Python watchdogでは `time.sleep(1)` でファイルの書き込み完了を待つ。Power Automateは自動で処理するが、大きなファイルは遅延が生じることがある。
### 失敗4:自動化が止まっていたことに1週間気づかなかった
→ エラー通知メールを設定する。または「要確認フォルダが空になっているか」を週次チェックに組み込む。
—
## よくある質問(FAQ)
**Q:Mac でフォルダ整理を自動化できますか?**
A:できます。MacのAutomatorアプリで「フォルダアクション」を設定すると、特定フォルダへのファイル追加をトリガーに自動処理ができます。Python watchdogもMacで動作します。
**Q:自動整理で間違えてファイルを移動してしまった場合は?**
A:移動直後であれば `Ctrl+Z`(エクスプローラー上)で戻せます。設定段階では必ず「要確認」フォルダを末端に設けて、誤移動のリスクを最小限にしてください。
**Q:ファイルが重複して同名ファイルが上書きされる可能性はありますか?**
A:あります。Pythonの場合は移動先に同名ファイルがあれば `_2` などの連番をつける処理を追加してください。Power AutomateとYoomは設定によって上書きを防ぐオプションがあります。
**Q:クラウドとローカルを横断して自動整理できますか?**
A:Power AutomateやYoomを使えばOneDrive・SharePoint・Google Driveとローカルフォルダを組み合わせたフローを組めます。ただし設定の複雑さが増すため、まずは1つの環境に絞ることをおすすめします。
—
## まとめ
– 自動化前に「整理ルールの設計」が必須。ルールなしの自動化は混乱の元
– M365環境 → Power Automate が最も導入しやすい
– Google Drive中心 → Yoom / Make がノーコードで使いやすい
– ローカルPCで定時処理 → タスクスケジューラ+バッチファイル
– リアルタイム監視・完全自動化 → Python watchdog
– エラー通知・週次確認・3ヶ月ごとのルール見直しが安定運用の鍵
一度整理ルールを設計してフローを動かせば、毎週のフォルダ整理作業から解放されます。まずルール設計テンプレートを埋めるところから始めてみてください。
—
## CV導線
フォルダ整理の自動化は「命名規則が決まっている」ことが前提です。まだ命名規則が決まっていない方はこちらを先にご覧ください。
→ [紙書類のデジタル化手順:ファイル命名規則の作り方](https://igaramu.com/trouble-solution/skill-up/kami-shorui-digitalization-steps/)
ノーコードで始めたい方はYoomとMakeがどちらも無料登録で試せます。まずYoomのGoogle Driveテンプレートを使ってみるのが最短です。
コメント