Outlook でメールを月ごとにグループ化したり並べ替えたりするには、どうすればよいですか?
既定では、Outlook は受信トレイ内のメールを受信日に基づいて整理し、通常は時系列順に並べ替えられます。しかし、多くのユーザーはメールを月単位で分析・管理したいと考えています。たとえば、対応の傾向を把握したり、アクティビティを追跡したり、特定の月のメッセージを監査したりする場合です。残念ながら、Outlook には受信月でメールを直接並べ替えたりグループ化したりする組み込み機能がありません。本記事では、この制限を克服する実用的な解決策として、カスタムフィールドを作成し、VBA コードを使ってメールを月ごとに分類する方法をご紹介します。これにより、月次の分析が大幅に効率化されます。
メールを月ごとにグループ化または並べ替えると、プロジェクトの活動状況を確認したり、月次レポートを作成したり、メールボックスをより管理しやすい形に整理したりするのに特に役立ちます。この方法は、業務用・個人用を問わずメールボックス管理に活用でき、異なる期間のメールをアーカイブする際にも同様に効果的です。
VBA コードを使用してOutlook でメールを月ごとにグループ化または並べ替える
代替ソリューション:VBA を使いたくない場合は、Outlook の検索機能で特定の月のメールを検索したり、フィルター条件を設定して月ごとの対応を表示したりできます。詳細については、代替ソリューションのセクションをご覧ください。。
VBA コードを使用してOutlook でメールを月ごとにグループ化または並べ替える
この解決策では、メールフォルダーの表示に「Month」という新しい列を追加し、VBA コードを使ってすべてのメールの受信月を自動的にその列に記入します。設定が完了すれば、「Month」列を使ってメールを簡単に並べ替えたりグループ化したり可能。大量のメールを処理する場面や、定期的に月次サマリーが必要な場合に最適で、各メッセージを手動でフィルターするよりも大幅な時間節約につながります。
まず、月ごとにメールを整理したいフォルダーを開きます。次に、Outlook 2010 以降のバージョンでは、表示タブ内にある表示設定ボタンを見つけ、クリックします。すると、メールの表示方法をカスタマイズできる設定画面が開きます。

注:Outlook 2007 をご利用の場合は、表示>現在のビュー>現在のビューのカスタマイズの順に選択して、必要な設定画面を開いてください。
詳細な表示設定/ビューのカスタマイズダイアログが開いたら、列ボタン(場合によっては)フィールドと表示されることがあります)をクリックしてください。これにより、現在のメッセージ表示に列やフィールドを簡単に追加・調整できます。

列の表示/フィールドダイアログで、新しい列(または)新しいフィールド)を選択してフィールド作成ウィンドウを開きます。「名前」フィールドにMonthと入力し、名前フィールドの種類および書式をどちらもテキストに設定してください。「OK」をクリックして確定します。今後実行するマクロが月名(「Jan」や「Feb」など)をテキスト形式で書き込むため、種類をテキストに設定することが重要です。OK。

新しい列を追加すると、列の表示/フィールドダイアログに戻ります。「これらの列をこの順序で表示」リスト内でMonthエントリを選択し、これらの列をこの順序で表示上へ移動ボタンを使って、「受信日」の直下に配置します。こうすることで、受信日と月が隣り合って表示され、比較がぐっと簡単になります。最後に、受信日の設定を完了するには「OK」をクリックして変更を保存します。OK。

OKダイアログを閉じると、フォルダー表示に新しいMonth 列が追加されます。
このフォルダー内のすべてのメールに VBA マクロを適用するには、まずすべてのメッセージを選択する必要があります。フォルダー内の任意のメールをクリックしてから、Ctrl+Aを押せば、一括で全メールが選択されます。これにより、マクロがフォルダー内の各アイテムを確実に処理できるようになります。
注:読み取りウィンドウが有効になっている場合は、パフォーマンス向上のため、無効にすることをおすすめします。表示 > 読み取りウィンドウ > オフの順に選択してください。これにより、大量のメールを処理中に表示や選択に関する問題を回避できます。
次に、Alt+F11を同時に押して、VBA エディターを開きます。Microsoft Visual Basic for Applicationsウィンドウで、挿入>標準モジュールをクリックし、コード用の新しいモジュールを作成します。
新しく作成したモジュールに、以下の VBA マクロをコピー&ペーストしてください。このコードは、選択された各メールの受信日を読み取り、その月を抽出してカスタムの「Month」フィールドに書き込みます。
VBA:メールを月ごとに並べ替えまたはグループ化
Sub ListSelectionMonth()
Dim aObj As Object
Dim oProp As Outlook.UserProperty
Dim sMonth
On Error Resume Next
For Each aObj In Application.ActiveExplorer.Selection
Set oMail = aObj
sMonth = Month(oMail.ReceivedTime)
Set oProp = oMail.UserProperties.Add("Month", olText, True)
oProp.Value = sMonth
oMail.Save
Err.Clear
Next
End Sub コードを配置したら、VBA エディター内でF5を押してマクロを実行してください。実行前に、関連するすべてのメールが選択されていることをご確認ください。プロンプトや許可ダイアログが表示された場合は、続行を承認してください。
マクロを実行すると、フォルダー内の「Month」列に各メールの受信月が表示されます。メールを月ごとに並べ替えるには、Month 列のヘッダーをクリックするだけです。この列で並べ替えると、メールが受信された月順に整理され、対応の傾向を確認したり、アーカイブレポートを作成したりする際に非常に便利です。

メールを単に並べ替えるのではなく、月ごとにグループ化したい場合は、Month 列のヘッダーを右クリックし、コンテキストメニューからこのフィールドでグループ化を選択してください。これにより、メールが各月ごとに展開可能なグループに分類され、月ごとの対応量を視覚的に把握しやすくなります。

トラブルシューティングとヒント:「Month」列が正しく表示されない場合は、指示通りに正確な条件名と種類を使用しているかご確認ください。このマクロは選択されたメールのみを処理するため、意図せずフィルターがかかっていないかもチェックしてください。数千通のメールを含む大規模なフォルダーでは、処理に時間がかかることがあります。Outlook が応答しなくなった場合は、処理が完了するまでしばらくお待ちいただくか、メールを小さなバッチに分けて処理してください。
VBA マクロの実行には注意が必要です。Outlook のセキュリティ設定により、マクロを有効にするか権限を調整する必要がある場合があります。アイテムのプロパティを変更するスクリプトを実行する前に、必ず重要なデータをバックアップしてください。また、新規メールを受信した後でマクロを再実行すると、それらの新しいアイテムについても「Month」値が更新されます。
メリットと制限事項:この方法は柔軟性に優れ、どのOutlook フォルダーでも利用できますが、正しく実行するには VBA エディターの操作に慣れておく必要があります。グループ化機能を使えば、外部ツールなしで月次の分析を素早く行えます。ただし、VBA を使用するため、変更内容はご自身のOutlook プロファイルにのみ適用され、他のデバイスやユーザーと自動的に同期されることはありません(別途実装が必要です)。
実用的なヒント:月ごとに並べ替えまたはグループ化した後は、各期間のメールをさらにフィルタリング・分類したり、エクスポートしたりできます。繰り返し使用する場合は、マクロを保存しておき、新規メールごとに「Month」フィールドを必要に応じて更新できるようにしておきましょう。
Outlook の AI メールアシスタント:ワンクリックで魔法のように、よりスマートな返信と明確なコミュニケーションを実現!
Kutools for Outlook の AI メールアシスタントで、日々のOutlook タスクをもっと効率的に。この強力なツールは過去のメールから学習し、的確で知的な返信を提案したり、メールの内容を最適化したり、メッセージの下書きや修正を簡単にサポートします。

この機能は以下のサポートを提供します:
- スマート返信:過去の会話に基づき、カスタマイズされ、正確で即使用可能な返信を取得できます。
- コンテンツ強化:メール本文を自動で明確かつ効果的な内容にブラッシュアップします。
- 簡単作成:キーワードを入力するだけで、AI が複数の書式スタイルで残りの作業を自動処理します。
- インテリジェント拡張:文脈を的確に捉えた提案であなたのアイデアをさらに広げます。
- 要約機能:長いメールを瞬時に簡潔な概要にまとめてくれます。
- グローバル対応:メールをあらゆる言語に簡単に翻訳できます。
この機能は以下のサポートを提供します:
- スマートメール返信
- 最適化されたコンテンツ
- キーワードベースの下書き
- インテリジェントなコンテンツ拡張
- メール要約
- 多言語翻訳
代替ソリューション:受信月でメールをフィルタリングまたは検索する
VBA マクロを使いたくない方や、Outlook の組み込み機能で対応したい場合は、検索およびフィルター機能を使って特定の月のメールを簡単に表示できます。
- メールフォルダーの上部にある検索バーに移動します。
- 次のように入力します。received: January 2024(必要に応じて月と年を調整してください)。すると、Outlook はその期間中に受信したメールを一覧表示します。
- さらに高度なフィルターを利用するには、「検索ツール」>「日付で検索」コマンドを使用するか、表示設定でフィルターを追加して、特定の日付範囲(例:1 月1 日~1 月31 日)に該当するメッセージを表示できます。
もう一つの代替手段は、Outlook の条件付き書式を使用して、特定の月に受信したメールを視覚的に強調し、一目で確認しやすくすることです。これを行うには、[表示] > [表示設定] > [条件付き書式] に移動し、受信日に基づくルールを追加します。
最高の Office 生産性ツール
まったく新しいKutools for Outlook を、100 以上の驚きの機能とともに体験しましょう!今すぐダウンロード!
🤖KUTOOLS AI:高度な AI 技術を活用して、メールの返信、要約、最適化、拡張、翻訳、作成など、あらゆる操作をラクラクこなします。
📧メール自動化:自動返信(POP および IMAP 対応)/メールのスケジュール送信/メール送信時にルールに基づいて自動 CC/BCC/自動転送(高度なルール)/自動で挨拶文を追加/複数の宛先を持つメールを個別のメッセージに自動分割...
📨メール管理:メールの取り消し/件名などを基準に詐欺メールをブロック/重複したメールを削除/高度な検索/フォルダーを整理...
📁添付ファイルプロ:一括保存/一括分離/一括圧縮/自動保存/自動的に切り離す/自動圧縮...
🌟インターフェースの魅力:😊さらに美しくクールな絵文字を多数収録/重要なメールが届いた際に通知/Outlook を閉じる代わりに最小化...
👍ワンクリックの驚き:全員に【Attachment】付きで返信/フィッシングメール対策/🕘送信者の現在時刻ゾーンを表示...
👩🏼🤝👩🏻連絡先とカレンダー:選択したメールから連絡先を追加を一括登録/連絡先グループを個別のグループに分割/誕生日のリマインダーを削除...
Kutools はお好みの言語でお使いいただけます!英語、スペイン語、ドイツ語、フランス語、中国語をはじめ、40 以上の言語をサポートしています!
ワンクリックでKutools for Outlook の機能を即解放!今すぐダウンロードして、効率を飛躍的にアップさせましょう!


🚀 ワンクリックダウンロード — Office アドインをすべて入手
強く推奨:Kutools for Office(5-in-1)
ワンクリックで5 つのインストーラーを 一括ダウンロード! ―Kutools for Excel、Outlook、Word、PowerPointおよびOffice Tab Pro。今すぐダウンロード!
- ✅ワンクリックで簡単操作:5 つのセットアップパッケージをたった1 回のクリックで一括ダウンロードできます。
- 🚀どんな Office 作業にも対応可能:必要なときに、必要なアドインをすぐインストールできます。
- 🧰含まれるもの:Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint