none
メールの本文を1行出力でエクスポートしたいです RRS feed

  • 質問

  • Outlook2016を使用しています。

    メールの内容をCSVではきだすと本文が改行され整理ができません。

    宛先名:日付:本文を1セルずつ3列1行にするにはどうしたら良いでしょうか?

    Outlookのマクロをこちらのサイトを参考にしようとしましたが「コンパイルエラー、EndSubが必要です」と出力されてしまいます。

    コンパイルエラーと出力されてしまう

    Sub TEST()
     Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
         Const XX = "XX"
         Const N = 5
         Const CSV_FILE = "c:\temp\report.csv"
         Dim objItem As Object
         Dim arrLine As Variant
         Dim strLine As String
         Dim i As Integer
         '
         Set objItem = Session.GetItemFromID(EntryIDCollection)
         If objItem.MessageClass = "IPM.Note" Then
             ' CSV ファイルを追記モードで開く
             Open CSV_FILE For Append As #1
             ' 本文を改行コードで行に分割
             arrLine = Split(objItem.Body, vbCrLf)
             For i = LBound(arrLine) To UBound(arrLine)
                 strLine = arrLine(i)
                 ' 行が指定のキーワードで終わるか確認
                 If strLine Like "*" & XX Then
                     ' 行が指定のキーワードより前に文字列を含むかチェック
                     If Len(strLine) > Len(XX) Then
                         ' 行末の指定のキーワードを削除
                          strLine = Left(strLine, Len(strLine) - Len(XX))
                         ' 残りが N 以上か確認
                         If Len(strLine) >= N Then
                             ' N 文字だけ抜き出す
                              strLine = Mid(strLine, Len(strLine) - N + 1)
                         End If
                     End If
                 End If
                 If Len(strLine) > 0 Then
                     ' 取得した行を CSV ファイルに書き出す
                     Print #1, strLine
                 End If
             Next
             Close #1
         End If
    End Sub


    お手数ですがご教示頂けますと幸いです。

    2019年5月24日 4:49

すべての返信