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

[WinActor]保存した.msgファイルを読込

今日、たまたま[20 メール関連] - [01 Outlook操作] - [Outlook 条件を指定して対象メール保存.ums6]を使う機会があって、msg形式でメール保存されたはいいものの、そこからmsgファイルを読み込むライブラリが見つけられなくて、ぬぉーーーーーっ!!ってなったのでスクリプト書いてみた。

ライブラリにも登録しておきましたー、寄ってってね?

[WinActor]スクリプト実行ライブラリ

 

1.設定イメージはこんな感じ。

 

2.スクリプトはこんな感じ。

GetMailBody(!msgファイルパス!)

Function GetMailBody(MailFilePath)
    Dim oApp
    Set oApp = Nothing
    Dim oOlns 'As Outlook.NameSpace
    Dim oMItem 'As Object
    
    On Error Resume Next
    '起動済みのOutlookをクラス名を指定して取得
    Set oApp = GetObject(, "Outlook.Application")
    On Error GoTo 0

    'oAppがNothingなら
    If oApp Is Nothing Then
        Err.Raise 1, "", "Outlookが起動されていません。"
        'WScript.Quit()
    Else
        Dim myOlExp
        Set myOlExp = oApp.ActiveExplorer
        If myOlExp Is Nothing Then
            Err.Raise 1, "", "Outlookが起動されていません。"
            WScript.Quit()
        End If
    End If

    Set oOlns = oApp.GetNamespace("MAPI")
    Set oMItem = oOlns.OpenSharedItem(MailFilePath)
    With oMItem
      SetUMSVariable $件名$, .Subject
      SetUMSVariable $受信日時$, .ReceivedTime
      SetUMSVariable $本文$, .Body
      .Close olDiscard
    End With
    
    GetMailBody = RsltStr
End Function

 

3.備考はこんな感じ。

ファイル保存されたメール(.msg)を読み込みます。

 

一応、取り込むメールの本文が引用文含めてすんごく長くなりそうなら、「フローチャート画面」のシナリオ情報から「変数値の文字数を制限する」のチェックを外しとくことをおすすめします?

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