サイトアイコン わんすけに聞いてみる

[VBA]ExcelマクロからOutlookで選択中のメールを取得

ExcelマクロからOutlookで選択中のメールを取得する方法のメモ

1.[ツール] - [参照設定]からOutlookを操作できる様に設定する。

このパソコンの場合は、「14.0」だけども数字はOfficeバージョンによって変わります。

2.選択中のメールを取得するコードはこんな感じ

Sub 選択中のメールを表示する()
    
    Dim objOL As Outlook.Application
    Dim objOLSelect As Outlook.Selection
    Dim objML As MailItem
    
    Set objOL = New Outlook.Application
    Set objOLSelect = objOL.ActiveExplorer.Selection
    
    If objOLSelect.Count = 1 Then
        Set objML = objOLSelect.Item(1)
        MsgBox "あなたの選択したメールは『" & objML.Subject & "』ですね?"
    Else
        MsgBox "いっこだけ選択してぇ"
    End If
    
End Sub

 

これで、objMLに選択中のメールが取得されてるから、あとは好きなプロパティを取得してね。

.Displayしたらポップアウト表示もできるよ。

とりあえず、複数選択はできないようになってるけども、複数選択したアイテムも全部コレクションで取得できてるから順番に何か処理するってこともできるよ。

 

モバイルバージョンを終了