Outlook
のメールをエクスポートするのにはいろいろな手法がありますが。
条件に合致するメールをエクセルで一覧表示したい場合。
Excel
のPowerQuery
で用意されている その他のデータソースから
で接続して、エクセルシートに取り込むのが便利かと思います。
本記事ではこちらの方法について記載します。
今回の環境
- Microsoft® Excel® for Microsoft 365 MSO (バージョン 2212 ビルド 16.0.15928.20196) 64 ビット
PowerQueryから接続する
データタブからデータの取得
=> その他のデータソースから
=> Microsoft Exchangeから
を選択
メールボックスのアドレスを入力してOKを選択
先程、入力したメールボックスへの認証情報の入力プロンプトが出てきます。
今回はMicrosoftアカウント
を選択して、サインインを選択
アカウントを選択するのポップアップが表示されるので、対象のアカウントを選択します。
接続できると、サインインしていません
から現在、サインインしています。
にメッセージが変わります。
サインインしている事を確認して、接続ボタンを選択します。
ナビゲーター画面が立ち上がるので、今回取得したいMail
を選択してデータの変換
を選択
PowerQuery
エディタが起動するので欲しい情報を整形して閉じて読み込むを選択すると、エクセルシートにメールが抽出されます。
なおPowerQuery
で何もフィルタしないと全件取り込もうとします。
Subject
で件名絞ったり、Sender , ToRecipients
で送信受信者を絞ったり。
DataTimeReceived
で受信日付で絞ったり。
適宜フィルタする事で、取得したいメールだけ読み込むように調整できます。
またメール本文については、Body
にhtml
とtext
形式の項目で格納されているので、こちらの項目から展開する事で対応できます。
一度接続した資格情報は保存される
今回、Micorosoftアカウント
で接続しましたが、もう一度同様に接続する際には認証の手順はスキップされます。
これは情報が保存されているわけです。
どこに保存されているかと言うと。
データソースの設定
から保存されている情報を確認できます。
データソースの設定
を確認すると、さきほど入力したアカウントが表示されています。
設定をクリアしたい場合はこちらからクリアすると、さいど認証の画面が表示されるようになります。
総評
指定した条件のメールが何件来ているのかだったり、ちょっとした集計をしたい場合にさくっと利用できるので便利です。