Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(指定なし : 指定なし)
outlookのヘッダー情報だけExcelに出せますか?
投稿日時: 20/01/14 15:37:40
投稿者: 春麗

フォルダの中に数百とメールがあります.
Outlookで届いたメールを保存しています.
ある統計を出したいのですが,ヘッダーの情報が必要です.
一つ一つ開いてコピペしか方法が思いつかず,ほかに方法があれば教えていただければと思います.
よろしくお願いいたします.

回答
投稿日時: 20/01/14 16:21:11
投稿者: WinArrow
投稿者のウェブサイトに移動

以下のWEBページを見つけました。
参考にあるとよいです。
私はOUTOOKを使っていないので試したみることができません。
情報提供だけです。
 
https://i-wonder.hatenablog.jp/entry/2018/07/07/Outlook%E3%81%AE%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%92Excel%E3%81%A7%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%80

投稿日時: 20/01/14 17:14:53
投稿者: 春麗

WinArrowさん
情報をありがとうございます.
拝見します.

回答
投稿日時: 20/01/25 18:47:09
投稿者: ライスマン

ヘッダーの情報が何を指すのかわかりませんが
WinArrowさん紹介の
受信日時 差出人 差出人アドレス CC 件名 本文 で良いのなら
試した結果できましたよ。 当方Outlook2013です。
 
私はメールを溜め込む方では無いので10件程度のメールでしたけど
 
 
数百件のメールとなると目が回りそうww

回答
投稿日時: 20/02/05 17:11:18
投稿者: takesi

https://outlooklab.wordpress.com/
OUTLOOK 研究所
 
outlook VBAもいろいろできてすごいですね。

回答
投稿日時: 20/02/06 19:29:20
投稿者: takesi

一応 ヘッダー 書き出せました。
 
win10、office365
 
Public Sub 受信メール()
 
'画面更新停止
    Application.ScreenUpdating = False
 
' 定義
    Dim objOL As Object
    Dim sht As Worksheet
    Dim rowCnt As Long
 
' 「Outlookから取得する」をobjOLと命名
    Set objOL = CreateObject("Outlook.Application")
 
' 読み込むシート(シート名リスト)をshtと命名
    Set sht = Worksheets("Sheet3") ' シート名
 
' A列一番下のセルをrowCntと命名
    rowCnt = Cells(Rows.Count, "A").End(xlUp).Row
 
' Outlookの受信ボックスのメールを最終行の1行下に取得・件数分繰り返す
    For Each itms In objOL.GetNamespace("MAPI").GetDefaultFolder(6).Items ' olFolderInbox:6
     
        If itms.Class = 43 Then ' olMail:43
            sht.Cells(rowCnt + 1, 1).Value = itms.ReceivedTime ' A列・受信日時
            sht.Cells(rowCnt + 1, 2).Value = itms.SenderName ' B列・差出人
            sht.Cells(rowCnt + 1, 3).Value = itms.SenderEmailAddress ' C列・差出人アドレス
            sht.Cells(rowCnt + 1, 4).Value = itms.CC ' D列・CC
            sht.Cells(rowCnt + 1, 5).Value = itms.Subject ' E列・件名
            sht.Cells(rowCnt + 1, 6).Value = itms.Body ' F列・本文
 
       ' ---PropertyAccessor クラスのインスタンスを取得します。
            PropName = "http://schemas.microsoft.com/mapi/proptag/0x007D001E"
            Set oPA = itms.PropertyAccessor
            sht.Cells(rowCnt + 1, 7).Value = oPA.GetProperty(PropName) 'G列・ヘッダー
            rowCnt = Cells(Rows.Count, "A").End(xlUp).Row
 
        End If
     
    Next
 
    Set objOL = Nothing
 
    Range("A1").Select
 
' 画面更新停止を解除
    Application.ScreenUpdating = True
 
' 終了メッセージ
    MsgBox "終了しました。"
 
End Sub

トピックに返信