質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Outlook

Microsoft OutlookはMicrosoft Officeの一部として組み込まれている、のユーザー管理とメーラーの機能を持ち合わせたソフトウェアです。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

Q&A

2回答

3811閲覧

Outlookの特定のメールをExcelに出力したい

退会済みユーザー

退会済みユーザー

総合スコア0

VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Outlook

Microsoft OutlookはMicrosoft Officeの一部として組み込まれている、のユーザー管理とメーラーの機能を持ち合わせたソフトウェアです。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

0グッド

0クリップ

投稿2020/10/05 13:12

前提・実現したいこと

Outlookの特定の受信フォルダにある、特定の文字列を本文または件名に持ったメールを、Excelに出力したいと思っています。
条件

発生している問題・エラーメッセージ

件名や本文で絞り込む方法が分かりません。

該当のソースコード

VBA

1Sub GetMail() 2Dim objOutlook As Outlook.Application 3Dim myNamespace As Outlook.Namespace 4Dim myInbox, folderA 5 6Set objOutlook = New Outlook.Application 7Set myNamespace = objOutlook.GetNamespace("MAPI") 8 9Set myInbox = myNamespace.GetDefaultFolder(olFolderInbox) 10Set folderA = myInbox.Folders.Item("FolderA") 11 12Dim i As Long 13 14For i = 1 To folderA.Items.Count 15 With ThisWorkbook.Worksheets("Sheet1") 16 .Cells(i + 1, 1).Value = folderA.Items(i).SentOn 17 .Cells(i + 1, 2).Value = folderA.Items(i).Subject 18 .Cells(i + 1, 3).Value = folderA.Items(i).Body 19 End With 20Next i 21End Sub

上記では、フォルダAのメールを全てExcelに書き込んでいますが、日時や件名、本文などOutlook内のメール情報をVBAで条件分岐させるには、どのようにしたらよいのでしょうか。
また、ExcelでもOutlookのVBAでもどちらでも構いません。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

vba

1Dim strSubject As String, strBody As String 2strSubject = "xxx" 3strBody = "yyy" 4 5If InStr(folderA.Items(i).Subject, strSubject) > 0 And InStr(folderA.Items(i).Body, strBody) > 0 Then 6 MsgBox "見つかった" 7End If

あと
Subject:件名
To:宛先
receivedTime:受信日時
Body:本文
Attachments:添付ファイル

投稿2020/10/06 00:08

sinzo

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Dim オブジェクト名 As Outlook.MailItem
が必要みたいです。
メールの件名や本文ものっていますので、こちらを参考にどうぞ。

http://tonari-it.com/excel-vba-outlook-mail-send/

投稿2020/10/05 14:01

firegrape

総合スコア902

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/10/05 22:29

すいません、特定のメールを抽出(Excelに出力)したいのですが、件名や本文(MailItemのプロパティ)に条件をかませるということでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問