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も見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
excelのVBAについて、以下のコードに追加をお願いいたします。
Visual Basic(VBA)
-
マクロについて質問です。 セルの内容をクリアするコマンドボタン(AX) を作成しました。 指定範囲が
Visual Basic(VBA)
-
エクセルVBAの配列について
Visual Basic(VBA)
-
-
4
xmlドキュメントから別拡張子で保存したい
Visual Basic(VBA)
-
5
Excel マクロについて
Visual Basic(VBA)
-
6
ユーザーフォームに別シートからデータを反映させたい。
Visual Basic(VBA)
-
7
ExcelのVBAのことで質問です。 以下のコードを入れ、ボタンを押せば作動させると写真のように画面
Visual Basic(VBA)
-
8
Cellsのコードが打てません
Visual Basic(VBA)
-
9
引数に数値、文字列の混在
Visual Basic(VBA)
-
10
VBA
Visual Basic(VBA)
-
11
エクセルファイルのデータ転記について
Visual Basic(VBA)
-
12
VBA エクセルで1列で表示したい。
Visual Basic(VBA)
-
13
VBA(えくせる)ってなんでメンテできない人が多いんですか?
Excel(エクセル)
-
14
VBA ファイル名取得
Visual Basic(VBA)
-
15
Excel:文字との間に数字の組合せ、次のセルの数字を1ずつ増やすには?
Excel(エクセル)
-
16
マクロVBAについてご教授いただけましたらと存じます。
Visual Basic(VBA)
-
17
エクセル VBAでの転記の方法について
Visual Basic(VBA)
-
18
エクセルで条件書式と数式の組み合わせはできる?
Excel(エクセル)
-
19
エクセルで有効桁数を確認する方法
Excel(エクセル)
-
20
Excelの各シートを色ごとで分類して値転記するマクロの作り方を教えて下さい。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
遅延確認応答について教えてく...
-
赤外線センサーについて
-
Outlookの「受信日時」「件名」...
-
C#にてCTI。RS232Cの受信と送信...
-
(VC++)シリアル通信について
-
パソコンに詳しい方教えて下さ...
-
ipadで社内ネットワークに接続
-
別のフォルダにファイルを移動...
-
jarファイルが開けない
-
Lhaplusが発したと、みられるエ...
-
Windows上のファイル操作の履歴...
-
java.lang.NumberFormatExcepti...
-
en_US.UTF-8ロケールってどのPO...
-
エクスプローラで表示したファ...
-
どうしたらいいか教えて下さい。
-
ffastun.*って何ですか?
-
ファイルの操作履歴の閲覧
-
バッチファイルでディレクトリ...
-
FFFTPでアップロードしたデータ...
-
FUJI XEROXの英語版ドライバの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Outlookの「受信日時」「件名」...
-
TCP/IP のパケットの分断と結合...
-
Outlookの「受信日時」「送信者...
-
CRC-CCITTに関しての仕様とサン...
-
シリアル通信時のデータ受信方法
-
Excxel vba でYahoo API で住所...
-
recv関数の戻り値について
-
UDP受信時の通信異常検知について
-
ASP.NET C#でPOST受信
-
RS232cを用いた送信プログラム
-
VC++メッセージの送受信につい...
-
PC98で232c送信winndowで受信で...
-
TCPのプログラミングで質問…と...
-
VBのMSCommコントロールを使っ...
-
「TCPは全二重可能」の意味
-
DHCPOFFERの受信について
-
VB2010で、シリアル通信の方法...
-
msgrcv( )で領域破壊?
-
ネットワークでの受信バイト数
-
シリアル通信
おすすめ情報