以下のようなことをやりたいのですが、

サンプルコード(VBA?)をご教示ください。

環境:Microsoft Outlook 2003

トリガー:特定の件名のメールを受信
動作:自動的にメール本文をテキストファイルへコピーし、
   日付のファイル名でテキストファイルを、デスクトップ上に保存

回答の条件
  • 1人3回まで
  • 13歳以上
  • 登録:2011/03/26 15:48:47
  • 終了:2011/04/02 15:50:02

回答(1件)

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912011/03/27 01:48:11

ポイント60pt

こんな感じでどうでしょうか。

Option Explicit
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
    Const SaveSubject = "保存したいタイトル名" ' このタイトルを含むメールを保存
    
    Dim objMail As MailItem
    Dim entID As Variant
    For Each entID In Split(EntryIDCollection, ",")
        Set objMail = Session.GetItemFromID(entID)
    
        If InStr(objMail.Subject, SaveSubject) > 0 Then
             SaveFile objMail
        End If
    Next
End Sub

Sub SaveFile(objMail As MailItem)
    Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")

    Dim ws
    Set ws = CreateObject("WScript.Shell")
    
    Dim filePath
    filePath = ws.SpecialFolders("Desktop")

    filePath = filePath & "\" & Format(objMail.ReceivedTime, "YYYYMMDD_HHNN") & ".txt"

    With fso.CreateTextFile(filePath, True)
        .Write objMail.Body
        .Close
    End With
End Sub

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません