Excel VBAでOutlookのメール本文を検索する方法【初心者向け解決ガイド】

パソコンパソコン・スマホ教室
スポンサーリンク

皆さん、こんにちは。パソコンやスマホの操作でお困りの方も多いかと思います。今日は、ExcelのVBAという機能を使って、Outlookのメール本文を検索する方法をご紹介します。難しそうに聞こえるかもしれませんが、一緒にゆっくりと進めていきましょう。

スポンサーリンク

VBAとは?そして、Outlookとどう関係するの?

Outlookのイメージ

Outlookのイメージ

まず、VBAについてお話しします。VBAは「Visual Basic for Applications」の略で、ExcelなどのMicrosoft Office製品を自動化するためのプログラミング言語です。これを使うと、手作業で行っていた繰り返しの作業を自動化できるんですよ。

では、Outlookとは何でしょうか?Outlookは、Microsoftが提供するメールソフトで、メールの送受信やスケジュール管理ができます。VBAを使うことで、Outlook内のメールを自動的に操作したり、特定の情報を抽出したりすることが可能になります。

Outlookのメール本文を検索する基本的な方法

それでは、具体的にOutlookのメール本文を検索する方法を見ていきましょう。以下の手順で進めていきます。

  1. ExcelでVBAエディターを開く
  2. Outlookの参照設定を行う
  3. VBAコードを記述する
  4. マクロを実行して結果を確認する

一つずつ詳しく説明していきますね。

1. ExcelでVBAエディターを開く

まず、Excelを開きます。次に、キーボードの「Alt」キーを押しながら「F11」キーを押すと、VBAエディターが開きます。ここでプログラムを作成していきます。

2. Outlookの参照設定を行う

VBAエディターが開いたら、上部メニューの「ツール」から「参照設定」を選択します。表示された一覧の中から「Microsoft Outlook xx.x Object Library」という項目にチェックを入れ、「OK」をクリックします。これで、VBAからOutlookを操作する準備が整いました。

3. VBAコードを記述する

次に、以下のコードを入力します。このコードは、Outlookの受信トレイ内のメール本文に特定のキーワードが含まれているかを検索し、その件名を表示するものです。

vba
Sub SearchMailBody()
Dim olApp As Outlook.Application
Dim olNs As Outlook.Namespace
Dim olFolder As Outlook.MAPIFolder
Dim olItems As Outlook.Items
Dim olMail As Outlook.MailItem
Dim strFilter As String
Dim i As Integer

' Outlookアプリケーションを取得
Set olApp = New Outlook.Application
Set olNs = olApp.GetNamespace("MAPI")
Set olFolder = olNs.GetDefaultFolder(olFolderInbox)
Set olItems = olFolder.Items

' 検索キーワードを指定
Dim keyword As String
keyword = "特定のキーワード"

' フィルターを作成
strFilter = "@SQL=" & Chr(34) & "urn:schemas:httpmail:textdescription" & Chr(34) & " like '%" & keyword & "%'"

' フィルターを適用
Set olItems = olItems.Restrict(strFilter)

' 検索結果を表示
For i = 1 To olItems.Count
If TypeName(olItems(i)) = "MailItem" Then
Set olMail = olItems(i)
Debug.Print olMail.Subject
End If
Next i

' オブジェクトの解放
Set olMail = Nothing
Set olItems = Nothing
Set olFolder = Nothing
Set olNs = Nothing
Set olApp = Nothing
End Sub

このコードを実行すると、Outlookの受信トレイ内で本文に「特定のキーワード」を含むメールの件名が表示されます。キーワードはご自身が検索したい言葉に置き換えてください。

4. マクロを実行して結果を確認する

コードを入力したら、VBAエディター上部の「実行」ボタンをクリックするか、キーボードの「F5」キーを押してマクロを実行します。結果は、VBAエディター内の「イミディエイトウィンドウ」に表示されます。もしイミディエイトウィンドウが表示されていない場合は、VBAエディターの「表示」メニューから「イミディエイトウィンドウ」を選択してください。

よくある質問や疑問

Q1. このマクロはどのバージョンのOutlookでも使えますか?

はい、基本的にはOutlook 2010以降のバージョンで使用可能です。ただし、古いバージョンでは一部の機能が異なる場合がありますので、ご注意ください。

Q2. 特定のフォルダ内のメールを検索することはできますか?

はい、可能です。コード内の「Set olFolder = olNs.GetDefaultFolder(olFolderInbox)」の部分を、検索したいフォルダに変更することで対応できます。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

今回は、ExcelのVBAを使ってOutlookのメール本文を検索する方法をご紹介しました。最初は難しく感じるかもしれませんが、手順に沿って進めていけば、きっと活用できるようになると思います。ぜひ試してみてくださいね。他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました