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も見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
ユーザーフォームに別シートからデータを反映させたい。
Visual Basic(VBA)
-
excelのVBAについて、以下のコードに追加をお願いいたします。
Visual Basic(VBA)
-
マクロについて質問です。 セルの内容をクリアするコマンドボタン(AX) を作成しました。 指定範囲が
Visual Basic(VBA)
-
-
4
エクセルVBAの配列について
Visual Basic(VBA)
-
5
Excel マクロについて
Visual Basic(VBA)
-
6
ExcelのVBAのことで質問です。 以下のコードを入れ、ボタンを押せば作動させると写真のように画面
Visual Basic(VBA)
-
7
Cellsのコードが打てません
Visual Basic(VBA)
-
8
引数に数値、文字列の混在
Visual Basic(VBA)
-
9
VBA
Visual Basic(VBA)
-
10
VBA ファイル名取得
Visual Basic(VBA)
-
11
VBA エクセルで1列で表示したい。
Visual Basic(VBA)
-
12
VBA(えくせる)ってなんでメンテできない人が多いんですか?
Excel(エクセル)
-
13
エクセルファイルのデータ転記について
Visual Basic(VBA)
-
14
マクロVBAについてご教授いただけましたらと存じます。
Visual Basic(VBA)
-
15
エクセル VBAでの転記の方法について
Visual Basic(VBA)
-
16
エクセルで有効桁数を確認する方法
Excel(エクセル)
-
17
Excelの各シートを色ごとで分類して値転記するマクロの作り方を教えて下さい。
Visual Basic(VBA)
-
18
エクセルで条件書式と数式の組み合わせはできる?
Excel(エクセル)
-
19
特定文字を入ってるCSVの特定の列を特定のexcelシートに取り込みたいです
Visual Basic(VBA)
-
20
会社のPCに入っているExcelでバーコードを作ろうと思い、「開発」→「挿入」→「コントロールの選択
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
recv関数の戻り値について
-
Outlookの「受信日時」「件名」...
-
C#にてCTI。RS232Cの受信と送信...
-
RS232cを用いた送信プログラム
-
DHCPOFFERの受信について
-
VBのMSCommコントロールを使っ...
-
パケット受信 recvfrom( )につ...
-
winsockを使ったTCP及びUDP通信...
-
パソコンに詳しい方教えて下さ...
-
Zipファイルをエクセルに指定変...
-
xterm コピーペーストできない
-
指定ファイルをFTPで自動アップ...
-
Windows上のファイル操作の履歴...
-
拡張子の関連付けの設定につい...
-
ICH5R→ICH5R (RAID0) マザー...
-
複数のテキストファイルの特定...
-
ノーマルクローズとノーマルオ...
-
誤って削除した、フォルダの回...
-
ファイルの操作履歴の閲覧
-
グローバルIPアドレスを取得し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Outlookの「受信日時」「件名」...
-
TCP/IP のパケットの分断と結合...
-
Outlookの「受信日時」「送信者...
-
CRC-CCITTに関しての仕様とサン...
-
シリアル通信時のデータ受信方法
-
Excxel vba でYahoo API で住所...
-
UDP受信時の通信異常検知について
-
recv関数の戻り値について
-
ASP.NET C#でPOST受信
-
RS232cを用いた送信プログラム
-
VC++メッセージの送受信につい...
-
PC98で232c送信winndowで受信で...
-
TCPのプログラミングで質問…と...
-
VBのMSCommコントロールを使っ...
-
「TCPは全二重可能」の意味
-
DHCPOFFERの受信について
-
VB2010で、シリアル通信の方法...
-
msgrcv( )で領域破壊?
-
シリアル通信
-
ネットワークでの受信バイト数
おすすめ情報