

Outlookの「受信日時」「件名」「本文」などをVBAを使ってExcelに転記したいのですが、下記のコードですと、古い受信日時から1件しか取得できません。
出来れば、「受信トレイ」や「移動」「下書」きなどの取得したいフォルダーを選択し、新しい日付けから、「受信日時」「件名」「本文」を一括で
Excelに転記できるVBAコードに設定にして頂けると助かります。
よろしくお願いいたします。
VBAコードURL
https://writening.net/page?NWK5ZZ
No.2ベストアンサー
- 回答日時:
以下は、Outlookから受信トレイ、移動、下書きなどのフォルダから新しい日付順に受信日時、件名、本文を一括でExcelに転記するVBAコードの例です。
このコードは、Outlookの既定のメールボックスからフォルダを選択し、そのフォルダ内のすべてのメールを取得します。vba
Copy code
Sub ExportEmailsToExcel()
Dim OutlookApp As Object
Dim OutlookNamespace As Object
Dim Folder As Object
Dim Item As Object
Dim xlApp As Object
Dim xlWB As Object
Dim xlWS As Object
Dim RowIndex As Integer
' Outlookアプリケーションを作成
Set OutlookApp = CreateObject("Outlook.Application")
' Outlookの名前空間を取得
Set OutlookNamespace = OutlookApp.GetNamespace("MAPI")
' Excelアプリケーションを作成
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True ' Excelを表示
' 新しいExcelブックを作成
Set xlWB = xlApp.Workbooks.Add
' Excelワークシートを取得
Set xlWS = xlWB.Sheets(1)
' Excelワークシートにヘッダーを書き込む
xlWS.Cells(1, 1).Value = "受信日時"
xlWS.Cells(1, 2).Value = "件名"
xlWS.Cells(1, 3).Value = "本文"
RowIndex = 2 ' データの書き込み開始行
' フォルダを選択
Set Folder = OutlookNamespace.PickFolder
If Not Folder Is Nothing Then
' フォルダ内のすべてのメールを処理
For Each Item In Folder.Items
' メールのタイプがメールである場合のみ処理
If TypeOf Item Is Outlook.MailItem Then
' Excelにデータを書き込む
xlWS.Cells(RowIndex, 1).Value = Item.ReceivedTime
xlWS.Cells(RowIndex, 2).Value = Item.Subject
xlWS.Cells(RowIndex, 3).Value = Item.Body
RowIndex = RowIndex + 1
End If
Next Item
End If
' メモリを解放
Set OutlookApp = Nothing
Set OutlookNamespace = Nothing
Set Folder = Nothing
Set Item = Nothing
Set xlApp = Nothing
Set xlWB = Nothing
Set xlWS = Nothing
End Sub
このコードを実行すると、Outlookのフォルダを選択するダイアログが表示されます。選択したフォルダ内のすべてのメールがExcelに転記されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Outlookの「受信日時」「送信者アドレス」「件名」「本文」の内容をExcelへの取り込み 2 2024/02/05 19:05
- Visual Basic(VBA) Outlook VBAについて 1 2023/07/10 12:41
- その他(Microsoft Office) outlook vba 予定表 3 2022/11/20 14:51
- その他(データベース) Excel VBA 転記について 1 2022/04/20 16:55
- その他(Microsoft Office) VBA メール送信済で実行されるはずが、実行されない時があります。 2 2023/02/02 14:05
- Gmail 受信メール(hotmail(outlook)=同じ内容のメールが複数受けとる 2 2023/11/02 02:49
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) tatsumaru77様 昨日回答して頂いたものです。 すみませんが、昨日の質問で1つ補足があります 1 2022/05/15 15:06
- Visual Basic(VBA) エクセルVBA 4 2022/05/14 00:51
- Visual Basic(VBA) 転記するVBAコードを教えて下さい。 1 2023/03/31 17:22
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAを使ってOutlookメール本文からキーワードのみを抽出してExcelにリストさせるには
その他(プログラミング・Web制作)
-
Outlookの「受信日時」「送信者アドレス」「件名」「本文」の内容をExcelへの取り込み
Visual Basic(VBA)
-
Outlookで送受信日時もExcelにエクスポートするには
Gmail
-
-
4
受信したメールの内容を自動的にExcelに反映できますか?
Excel(エクセル)
-
5
OUTLOOKのメールアカウントの受信フォルダーへVBAでアクセスするには。
Visual Basic(VBA)
-
6
【Excel VBA】CSV取込時、数字の先頭の0を消えないようにするには?
Excel(エクセル)
-
7
Outlookにて既にウィドウ単体で開いているメールの本文をVBAにて取得する方法
Visual Basic(VBA)
-
8
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
9
メッセージボックスを前面に表示させるには?
Visual Basic(VBA)
-
10
excelのマクロで該当処理できなければ飛ばして進むにはどうすればよいのでしょうか
Visual Basic(VBA)
-
11
エクセルvbaで転記したのですが、数字のゼロが消えてしまいます。 ゼロも転記するためにはどうしたらい
Excel(エクセル)
-
12
Application.ActiveInspectorでエラーがでます。
Visual Basic(VBA)
-
13
VBAでセルを指定した画像のコピー&ペーストを繰り返したい
Excel(エクセル)
-
14
件名や差出人をテキストファイルに吐き出すことは出来ますか?
Yahoo!メール
-
15
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
16
Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい
Excel(エクセル)
-
17
コンボボックスにリストが表示されません・・・
Excel(エクセル)
-
18
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
19
エクセルVBAでテキストボックスに入力があった場合のみ、ワークシートに転記したい
Visual Basic(VBA)
-
20
Outlook2010の表示上の受信日時について
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CRC-CCITTに関しての仕様とサン...
-
Outlookの「受信日時」「件名」...
-
Outlookの「受信日時」「送信者...
-
PICを用いた赤外線通信
-
TCP/IP のパケットの分断と結合...
-
winsockを使ったTCP及びUDP通信...
-
WinSockとWinPcapについて
-
ソケットプログラミング(配列に...
-
パソコンに詳しい方教えて下さ...
-
バックアップの用語
-
Batファイルでhostsを追加したい
-
Windows上のファイル操作の履歴...
-
Zipファイルをエクセルに指定変...
-
バッチファイルでディレクトリ...
-
別のフォルダにファイルを移動...
-
アプリケーションが見つかりません
-
java.lang.NumberFormatExcepti...
-
JP1のジョブスケジューリン...
-
Windowsのファイルコピーについて
-
データベースファイル 機種変の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Outlookの「受信日時」「件名」...
-
TCP/IP のパケットの分断と結合...
-
UDP受信時の通信異常検知について
-
Outlookの「受信日時」「送信者...
-
C#にてCTI。RS232Cの受信と送信...
-
VC++メッセージの送受信につい...
-
recv関数の戻り値について
-
RS232cを用いた送信プログラム
-
メーラー
-
PC98で232c送信winndowで受信で...
-
「TCPは全二重可能」の意味
-
VBのMSCommコントロールを使っ...
-
シリアル通信時のデータ受信方法
-
WinSockとWinPcapについて
-
マルチスレッドに挑戦したい
-
VC++ 2010 メッセージが文字化...
-
ネットワークでの受信バイト数
-
無線LAN、SIFSについて
-
winsockを使ったTCP及びUDP通信...
-
DHCPOFFERの受信について
おすすめ情報