プロが教えるわが家の防犯対策術!

いつも、メールでデータをもらっているのですが
メールからエクセルに落とす作業が大変なんです。

VBAで、エクセルにデータを落とし込むことが出来るのでしょうか?
ちなみに、仕分けのルールでフォルダーわけもしております。

たとえば、Aのフォルダーに来たメールの内容をピックアップする。
ピックアップする、本文の内容として、商品名、売値、利幅、在庫など
基本的に決められたカテゴリーになります。

エクセルで、少しVBAを触ることが出来るくらいなので
サンプルソースなどあればすごく助かります。

バージョンはoutlook2007でexcel2007です。

A 回答 (2件)

http://outlooklab.spaces.live.com/blog/cns!9D7EA … に決められたフォーマットの本文のデータを受信時に CSV ファイルに落とすサンプルがあります。
Excel の VBA ができるなら、CSV ファイルに保存するところを Excel に置き換えるだけなので簡単にできるでしょう。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
参考になりました。
早速いじってみます。

お礼日時:2009/12/02 10:08

エクセルVBAが少しできるぐらいで、他ソフトとの連携をするコードを考えるのは無理です。

特にエクセル以外はVBAに関する本や解説も少ない。
頼りはヘルプとWEB記事しかない。
ーー
そう言ってもWEBで例えばGoogleで「outlook 本文 VBA」で照会すれば相当コード実例も出る。プログラムを考える人にはWEB照会は常識ではないかな。質問する前に、そんなことを知ってましたか。
照会して、それらを読んで、考え、テストして、それから疑問点を質問したら、答えてくれる人が出るかもしれない。
直ぐ人に聞くなんて安易です。
フォルダの掴み方
本文の掴み方
>決められたカテゴリー(何のことだか読者には判りにくい)
本文の実例でも挙げて質問のこと。
OUTLOOK本文で項目の切り出し方
エクセルからOUTLOOKを開く開き方
セルにOUTLOOK本文からのセットの仕方
など、論点を整理するべきです。
    • good
    • 0
この回答へのお礼

失礼しました。
ネットで色々調べた上で、組み合わせなどを考えていたのですが
おしえてgooさんで質問すれば、知識豊富な方々が、色々参考になることを教えてくださると、思っておったのでやりたい事のみ書き込んでしまいました、確かに安易な考えで申し訳ございませんが、幾分はじめての投稿だったものですから以後気をつけます。

ちなみに本文を抽出するvbaは以下を使用しています。

Sub OL_TEST_LOOK_MAIL_0221()

Dim oApp As Object 'OutlookのApplication オブジェクト
Dim myNameSpace As Object '名前スペース
Dim myFolder As Object 'フォルダー指定

'outlook 起動をCreateObjectで
Set oApp = CreateObject("Outlook.Application")

Set myNameSpace = oApp.GetNamespace("MAPI")

Set myFolder = myNameSpace.GetDefaultFolder(6) '規定のフォルダー olFolderInbox=6 指定
myFolder.Display '表示

Dim objMAILITEM As Object 'メールアイテム
Dim n As Integer 'カウンター

For n = 1 To myFolder.Items.Count 'フォルダーのアイテム数分ループ
'メールを1通取り出す、変数にセットする
Set objMAILITEM = myFolder.Items(n)

Cells(n + 10, "A") = objMAILITEM.CreationTime '作成日
Cells(n + 10, "B") = objMAILITEM.SenderName '差出人
Cells(n + 10, "C") = objMAILITEM.SenderEmailAddress '差出人
Cells(n + 10, "D") = objMAILITEM.Subject '件名
Cells(n + 10, "E") = objMAILITEM.Body '本文
Next n

End Sub
ただ、受信するメールの本文の規定カテゴリーを抽出するやり方がわからなかったのと、もっと良いプログラミングが有ればと思い投稿させていただきました。

お礼日時:2009/12/02 10:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!