メインコンテンツへスキップ

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

OutlookからExcelにメールを自動的にエクスポートするにはどうすればよいですか?

Author Xiaoyang Last modified

通常、Import/Export機能を使用してOutlookからExcelにメールをエクスポートできます。しかし、受信したメールが到着すると同時にExcelファイルに自動的にエクスポートする必要がある場合、Outlookにはそのような組み込みのソリューションはありません。この記事では、それを実現するための2つの方法を紹介します。

VBAを使用して受信トレイからの新しい受信メールをExcelに自動的にエクスポート (手動で面倒)

Kutools for Outlookを使用して選択したフォルダーからすべてのメールをExcelレポートに迅速にエクスポート 👍 (高速で簡単)


VBAを使用して受信トレイからの新しい受信メールをExcelに自動的にエクスポート

新着メールをExcelに自動的にエクスポートする方法が必要な場合は、以下のVBAコードを使用できます。この方法は受信トレイフォルダを監視し、新着メールの詳細を到着後すぐにExcelファイルにエクスポートします。

ステップ1: Excelファイルを準備する

VBAコードを実行する前に、エクスポートされたメールデータを保存するためのExcelワークブックを設定してください。最初の行に次の列見出しを含めてください:No.、送信者名、送信者のメールアドレス、件名、受信時刻。

doc auto export emails to excel 1

ステップ2: OutlookでVBAエディタを開く

1. Alt + F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを開きます。

2. Project1 (VbaProject.OTM)ペインでMicrosoft Outlook Objectsを展開し、ThisOutlookSessionをダブルクリックします。

ステップ3: VBAコードを挿入する

次のVBAコードをモジュールにコピー&ペーストします。

Public WithEvents GMailItems As Outlook.Items
Private Sub Application_Startup()
    Set GMailItems = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub GMailItems_ItemAdd(ByVal Item As Object)
    Dim xMailItem As Outlook.MailItem
    Dim xExcelFile As String
    Dim xExcelApp As Excel.Application
    Dim xWb As Excel.Workbook
    Dim xWs As Excel.Worksheet
    Dim xNextEmptyRow As Integer
    On Error Resume Next
    If Item.Class <> olMail Then Exit Sub
    Set xMailItem = Item
    ' Update this path with your actual Excel file path  
    xExcelFile = "C:\Users\DT168\Desktop\split document\kto-data.xlsx"
    If IsWorkBookOpen(xExcelFile) = True Then
        Set xExcelApp = GetObject(, "Excel.Application")
        Set xWb = GetObject(xExcelFile)
        If Not xWb Is Nothing Then xWb.Close True
    Else
        Set xExcelApp = New Excel.Application
    End If
    Set xWb = xExcelApp.Workbooks.Open(xExcelFile)
    Set xWs = xWb.Sheets(1)
    xNextEmptyRow = xWs.Range("B" & xWs.Rows.Count).End(xlUp).Row + 1
    With xWs
        .Cells(xNextEmptyRow, 1) = xNextEmptyRow - 1
        .Cells(xNextEmptyRow, 2) = xMailItem.SenderName
        .Cells(xNextEmptyRow, 3) = xMailItem.SenderEmailAddress
        .Cells(xNextEmptyRow, 4) = xMailItem.Subject
        .Cells(xNextEmptyRow, 5) = xMailItem.ReceivedTime
    End With
    xWs.Columns("A:E").AutoFit
    xWb.Save
End Sub
Function IsWorkBookOpen(FileName As String)
    Dim xFreeFile As Long, xErrNo As Long
    On Error Resume Next
    xFreeFile = FreeFile()
    Open FileName For Input Lock Read As #xFreeFile
    Close xFreeFile
    xErrNo = Err
    On Error GoTo 0
    Select Case xErrNo
        Case 0: IsWorkBookOpen = False
        Case 70: IsWorkBookOpen = True
        Case Else: Error xErrNo
    End Select
End Function

doc auto export emails to excel 2

⚡ ヒント: 上記のコードでは、C:\Users\DT168\Desktop\split document\kto-data.xlsxは、メールデータが保存されるExcelワークブックのファイルパスとファイル名を表しています。必ずこのパスを実際の場所や使用したいファイル名に合わせて変更してください。

ステップ4: Microsoft Excel Object Libraryを有効にする

1. Microsoft Visual Basic for Applicationsウィンドウで、[ツール] > [参照設定] をクリックします。

2. [参照設定 - Project1] ダイアログボックスで下にスクロールし、Microsoft Excel Object Libraryオプションにチェックを入れます。

3. [OK] をクリックして変更を適用します。

doc auto export emails to excel 3

ステップ5: 保存してOutlookを再起動する

1. VBAコードを保存し、エディターを閉じます。

2. 変更を反映させるためにOutlookを再起動します。

結果:

これからは、受信トレイに届いたすべての新しいメールが指定されたExcelワークブックに自動的にエクスポートされます。

doc auto export emails to excel 4

VBA方式の制限事項:

  • ❌ 受信トレイのみ対応: この方法はデフォルトの受信トレイに届く新規メールのみを追跡します。複数のアカウントがある場合、他のアカウントからのメールはキャプチャされません。
  • ❌ マクロが有効化されているOutlookが必要: VBAマクロを有効にしておく必要がありますが、これはセキュリティ上の懸念があります。
  • ❌ ファイルパス依存: Excelファイルが移動または削除された場合、コードが失敗します。
  • ❌ 手動設定が必要: ユーザーはExcelファイルパスを手動で入力し、VBA環境をセットアップする必要があります。

📊 Kutoolsでよりスマートなメール統計を

Kutools for Outlook統計機能を使用して、メールのアクティビティを簡単に追跡および分析できます。受信したメールを日ごと、週ごと、または月ごとにカウントし、結果を明瞭でプロフェッショナルなチャートで表示しましょう!数回のクリックだけでメール管理を効率化し、貴重な洞察を得ることができます。

shot of the Statistics result

Kutools for Outlookを使用して選択したフォルダーからすべてのメールをExcelレポートに迅速にエクスポート 👍

VBAを使わずに(受信トレイ、送信済みアイテム、カスタムフォルダーなど)どのフォルダーからも簡単にメールをエクスポートする方法が必要な場合、Kutools for Outlookの「クイックレポート」機能が簡単な解決策を提供します。

Outlookの非効率さにさようなら!Kutools for Outlookは、一括メール処理を簡単に行えます - さらに、無料のAI機能も搭載!今すぐKutools for Outlookをダウンロード!

ステップ1: フォルダーを選択してクイックレポート機能を有効にする

1. Outlookを開き、エクスポートしたいフォルダー(受信トレイ、送信箱、送信済みアイテムなど)に移動します。

2. Kutools Plus > レポート > クイックレポートをクリックします。

ステップ2: 保存先を選択する

1. [レポートの保存] ウィンドウで、保存先を選択し、エクスポート用のファイル名を入力します。

2. [保存] をクリックします。

doc auto export emails to excel 7

ステップ3: エクスポートされたレポートを開く

確認メッセージが表示されます。エクスポートされたファイルを開くには「はい」をクリックします。

doc auto export emails to excel 8

結果:

選択されたフォルダー内のすべてのメールが、送信者、件名、受信時刻などの情報を表示するExcel互換のXMLファイルにエクスポートされます。

doc auto export emails to excel 9

Kutools for Outlook方式の利点:

  • ✅ すべてのフォルダーに対応: 受信トレイ、送信済みアイテム、送信箱、カスタムフォルダーからメールをエクスポートできます。
  • ✅ VBA不要: マクロを有効にしたり、コードを編集する必要はありません。
  • ✅ 複数アカウント対応: 複数のメールアカウントからのメールを簡単にエクスポートできます。
  • ✅ 時間節約: 数回のクリックでレポートが即座に生成されます。
  • ✅ カスタマイズ可能なデータエクスポート: 件名、送信者、日付などの詳細を自由に選択できます。
注意:Kutools for Outlookのクイックレポートユーティリティを使用するには、まずKutools for Outlookをダウンロードしてインストールする必要があります。

どちらの方法を使うべきですか?

ここでは、ニーズに最適な方法を選ぶために、2つの方法を比較します。

方法最適な用途使いやすさ効率性
VBAコードを使用 (自動だが複雑) 受信トレイから新規メールを自動的にエクスポート ⭐⭐ ⭐⭐⭐⭐
Kutools for Outlookを使用 (シンプルで柔軟性あり) 選択されたフォルダーからすべてのメールを迅速にエクスポート ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐

適切な方法を選択することで、作業フローに応じてOutlookのメールを効率的にExcelにエクスポートできます!


関連記事

  • Outlookでのメール本文の表をExcelにエクスポート
  • 本文にいくつかの表が含まれているメールを受け取ったとき、メッセージ本文からすべての表をExcelワークシートにエクスポートする必要がある場合があります。通常、表をコピーしてワークシートに貼り付けることもできますが、ここでは複数の表をエクスポートする必要がある場合に便利な方法について説明します。
  • Outlookでタスクリストを抽出またはエクスポート
  • Outlookを使用している際、タスクリストをExcelに抽出して他の用途に利用することができます。Outlookの強力なエクスポート機能により、タスクリストを簡単にExcelにエクスポートできます。以下のチュートリアルに従ってください。
  • Outlookで写真付きの連絡先情報をエクスポート
  • Outlookから連絡先をファイルにエクスポートする場合、通常はテキスト情報のみがエクスポートされます。しかし、時々、写真も一緒にエクスポートする必要がある場合があります。Outlookでこのタスクをどのように処理すればよいでしょうか?

最高のオフィス生産性ツール

最新情報: Kutools for Outlook 無料版リリース!

新しくなった Kutools for Outlook を100以上の素晴らしい機能とともに体験してください!今すぐダウンロードしてみましょう!

🤖 Kutools AI : 高度なAI技術を活用し、メールの返信、要約、最適化、拡張、翻訳、作成までを簡単に処理します。

📧 メール自動化: 自動返信(POPとIMAPに対応) / スケジュール電子メールを送信 /送信時にルールで自動 CC/BCC / 高度なルールによる自動転送 / 挨拶を自動追加 / 複数宛先メールを自動的に一通ずつ分割...

📨 メール管理: メールの取り消し / 件名などで詐欺メールをブロックする / 重複メールを削除 / 高度な検索 / フォルダーを整理...

📁 添付ファイルプロ: 一括保存 / 一括切り離し / 一括圧縮 / 自動保存 / 自動的に切り離す / 自動圧縮...

🌟 インターフェイスマジック: 😊さらに美しくてクールな絵文字 /重要なメール到着時に通知 / Outlookを閉じるのではなくグループを最小化...

👍 ワンクリック便利機能: 全員に【Attachment】付きで返信 / フィッシング対策メール / 🕘送信者のタイムゾーン表示...

👩🏼‍🤝‍👩🏻 連絡先&カレンダー: 選択したメールから一括で連絡先を追加 /連絡先グループを個別グループに分割 / 誕生日のリマインダーを削除...

お好みの言語で Kutools を利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語など40以上の言語に対応!

Kutools for Outlookをワンクリックですぐに利用開始。待たずに今すぐダウンロードして効率を高めましょう!

kutools for outlook features1 kutools for outlook features2

🚀 ワンクリックダウンロード — Office用アドインをすべて入手

強くおすすめ: Kutools for Office(5-in-1)

ワンクリックで五つのインストーラーを同時ダウンロード ― Kutools for Excel、Outlook、Word、PowerPointOffice Tab Pro 今すぐダウンロード!

  • ワンクリックの便利さ: 五つのセットアップパッケージを一度にダウンロードできます。
  • 🚀 あらゆるOffice作業に準備完了: 必要なアドインをいつでもインストール可能です。
  • 🧰 含まれるもの: Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint