次は、OutlookをエクセルVBAでいじるために、Outlookのオブジェクトを作ります。
Sub Outlook_test() Dim objOL As Object Dim objNAMESPC As Object Dim myfolder As Object Set objOL = CreateObject("Outlook.Application") Set objNAMESPC = objOL.GetNamespace("MAPI") Set myfolder = objNAMESPC.GetDefaultFolder(olFolderInbox) Debug.Print myfolder End Sub
意味不明からもしれませんが、くじけずに。
これを実行すると、イミディエイト・ウィンドウにデフォルトで指定されているフォルダ名が表示されます。
多分、「受信トレイ」とかが出ると思います。(人によって違うけど普通いじってない)
上記でやっているのは、
・「Outlook Application」をオブジェクトにしてあげて
・NameSpace(名前空間)の取得して
・それをobjNAMESPCってオブジェクトにして
・その中にあるデフォルトのフォルダをmyfolderというオブジェクトにする
という作業。
あくまでイメージですが、↓な感じで具体的にいじりたい対象であるメールまでたどり着くための設定をやっています。
上のコードではメールまではたどり着いてませんが、直前のフォルダまではたどり着いてます。
次のエントリーで、もう一歩進みましょう!
はじめまして。OUTLOOK VBA勉強なりました。
返信削除会社のexchange追加アカウントの受信通知をどうにかしたかったのですが解決できませんでしたw
仕方がないので1分毎に受信トレイを見に行って未読メールをチェックするようなマクロ作りました。
その際にこちらのサイトを参考にさせてもらいました。助かりました。
家での毎日の生活をつづる日記です。http://popikuma.xsrv.jp/wp
毎日の出来事を日記につづったり、色々な話を書いていきたいと思います。
あと、主にAV関係のヤフオク商品をオススメしたりしてますw
よかったらコメントくださいww
大変易しく丁寧に記述していただき、初心者ですが取り組みの意欲が湧いてきました。サンプルマクロのままでは、エラーとなりましたので投稿いたします。
返信削除当方の環境は、Word2013とOutlook2013です。
GetDefaultFolder(olFolderInbox)のところGetDefaultFolder(6)
としましたら、成功しました。
最終章まで学んで、結果を出したいと思っています。
今後ともよろしくお願いいたします。