私は、Outlook VBA
[メールの作成 や 読み込みを行いたい] / [予定 アポやスケジュールを管理したい] / [仕事・タスクを登録したい] / [アドレス帳や連絡先を管理したい] / [HELPからOutlookのプロパティやメソッドを探りたい]
です。※目的の処理を選択してください。


ken3memo : Outlook関係の→ [メモ・記事をチェック] / [アウトルックの動画解説へ]
全ての質問には、答えられませんが、リクエストや質問があったら、[作者(三流君)に質問する] から 気軽に送ってください [三流君(TOP)] / [VBA(TOP)] / [Outlook操作(TOP)]



三流君 Outlookのヘルプ HELPを探る

我流、私がやってる、やっていた?ヘルプで機能を探る方法を紹介してみます。
いろいろな方法、アプローチがあるので、参考程度に見て笑ってください。


#HELP

Outlook オブジェクトの探りかた

サンプルを見て、疑問に思うのが?調べ方やヘルプを見る方法だと思います。

そんな時は、msdn.microsoft.com/library の ↓ここから入るとよいかも、
[Outlook での VBA の使用]
とすすめるのは簡単だけど、ピンと来ないと思うので、実例で続けます。※自分に合った探し方を見つけてください

Excel VBA から Outlook Object Library を 参照設定して使う

ExcelなどでOutlookの操作を作成するときは、(Excelで開発して、.VBSに移植時も)
Outlook Object Library参照設定して使うと便利です。

ツール から 参照設定を選択

ExcelのVBAのコード編集画面(alt+F11)で
ツール 参照設定を選択後、
Outlook Object Libraryにチェックを付け、OKを押します。


変数を正しい型で宣言して使用する

変数の宣言で
Dim oApp As Outlook.Application 'OutlookのApplication オブジェクトを入れる
Dim myNameSpace As Outlook.Namespace '名前のスペースと言われても、、
Dim myFolder As Outlook.Folder 'フォルダー指定
みたいな感じで、正しく宣言します。

すると、ご褒美じゃないですが、
Dim myFolder As Outlook.Folder 'フォルダー指定
と.Folder型宣言すれば、



プログラム作成時に 引数のOlDefaultFolders が 表示されて
olFolderInbox 6 受信トレイ フォルダ。
olFolderCalendar 9 予定表フォルダ。
olFolderContacts 10 連絡先フォルダ。
などの指定が楽だし、6とか値を書かれても意味不明だし(ぉぃぉぃ)

操作動画:[操作動画]Outlook Object Library を 参照設定して使う

Outlookを起動して、Alt+F11のVBAで確認する

外から参照設定して確認するのも手ですが、直接OutlookのVBA マクロの編集画面で確認するのもアリかなぁ

私の我流な三流的攻略法だけど、
Outlookのオブジェクトの探り方は、

Outlookを起動します。
^^^^^^^^^^^^^^^^^^^^^
起動後、Alt+F11を押します。
すると、VBAのいつものよく見かける画面が表示されます。
※ExcelやAccessで参照設定したあとでもOKです。

ここで、探りたいオブジェクトの適当な変数を定義します。
Dim aa as 
とか入力すると、なんと、mailitemとか出てきます。


↑オブジェクトの変数が表示された例

そこで、
Dim aa as MailItem
と、メールのアイテム型の変数を定義します。
※これは、オブジェクト名前とかで狙いを付けて、
  まぁ、失敗してもやり直すって感じで。
(女性をデートの誘う時もこれくらい気軽に?できたらいいね(オイオイ))

次は、狙いをつけた女性の身に付けているブランド品や行動パターンじゃなくって、
あたりをつけた、オブジェクトのプロパテイやメソッドを探ります。

ここは、いきなりアタックって感じで、
Dim aa as MailItem
と定義してから、aa.とaaさんにアタックします。
すると、プロパティやメソッドが表示されるので、
それらしいプロパティ・メソッドの名称を選択します。

おっ、aaさんの行動は(メソッドは)これだとか、
ここも経験や当てずっぽうに推理します。
※出たとこ勝負もアリでしょう or パターンでなんとなくわかったり・・・


↑MailItemの.FlagStatus フラグのステータスを探して、選択したところです。

次は、そのプロパティにカーソルを合わせ、F1のヘルプを見る。
あれれ・・・ハズシタ(笑)フリダシニ戻る
や
OK、目的のプロパティ、メソッドだった、となります。

探り方、まとめるとこんな感じで、
該当するオブジェクト型の変数を定義
Dim aa as MailItem
その後、
aa.
と、候補を表示させ、それらしいのにアタック。

aa.FlagStatus と選択後、カーソルを合わせてからF1のヘルプを見る。

そんな流れでいつもVBAのプロパティ、メソッドを探ってます。
※もっと効率の良い、
  女の子(オブジェクト)へのアタック方法もあるんだろうけど・・・

あとは、世の中のチャラ男やナンパ男の成功例を見て自分も真似したいので、
GoogleやYahooで探したプロパティ、メソッドをキーワードにして事例を検索します。

すると、
.xxxxx プロパティはひどい女だったよ、
期待させておいてボッタクリのバグかよ・・・
とか
口説き落とすテクや扱い方の注意事項が載ってます。

まぁ、そのまま真似してもいいし、アレンジしてもいいし。

F1ヘルプで添付をキーワードに調べると

ヘルプで例えば、[添付]をキーワードに調べると。
.Attachments.Add
ってのが見つかる。(ネットでoutlook 添付で探すと一発だけど)

嘘つくなよテメエ、ExcelVBAのヘルプにそんなの無いぞ。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
素人だと思ってバカにしやがって、いつもヘルプ見ろヘルプ見ろってうるせえ。
Excelのヘルプで添付が出てこないから聞いてんだろ。

まぁまぁ、そんなに興奮しないでよ、どこかの危険な掲示板じゃないんだから。
えっと、これ、Outlookを起動してから、Alt+F11押すと、
OutlookのVBA編集画面が出るんですよ。

ここで、F1(ヘルプ)押して添付とキーワード入力をすると、
Attachmentsオブジェクトを見つけることが出来ます。
※outlook2000,20002からで、97は出ません(残念、、、)


↑ヘルプの検索イメージ

さてと、
Attachmentsオブジェクトのヘルプを見ると、
---
アイテムに添付ファイルを追加するには、Add メソッドを使用します。 

一貫した結果を得るには、アイテムの Attachments コレクションのオブジェクトを
追加したり削除したりする前に、アイテムを必ず保存します。

次の VBA の例は、新しいメッセージを作成し、Q496.xls ファイルをリンクではなく
添付ファイルとして添付し、その添付ファイルにわかりやすいキャプションを付けます。
Set myOlApp = CreateObject("Outlook.Application")
Set myItem = myOlApp.CreateItem(olMailItem)
myItem.Save
Set myAttachments = myItem.Attachments
myAttachments.Add "C:\My Documents\Q496.xls", _
    olByValue, 1, "1996 年の第 3 四半期報告"
---

なんて載ってます。

STOPで止めて、ウォッチ式、イミディエイトで現物の中身を確認する

ヘルプで見るのが確実なのですが、時として、現物を見た方が速い場合もあります。
そんな時によく使う方法が、
Stopやデバッグで止めて、オブジェクト変数の中身をイミディエイトで確認したり、
オブジェクト変数を右クリックして、ウォッチ式を追加したりして、中身を確認してみたり

Application.ActiveInspector.CurrentItemで開いているアイテムを確認

OutlookでVBAの編集画面(alt+F11)
イミディエイトのウインドウで、
? typename(application.ActiveInspector.CurrentItem)
とすると、
MailItem
AppointmentItem
TaskItem
など、アイテムが探れるので、タイプ・型がわかったら確認する方法もあったりします。

確認方法動画:Outlook ActiveInspector.CurrentItemで開いているアイテムを確認

右往左往、迷いながら解説している酔っ払い動画

例1.仕事・タスク TaskITEM を探る

簡単な流れと解説は→[TO DO に 登録したいので、As TaskITEM 仕事・タスクのアイテムを探る]を見てください


例2.同じように 予定 AppointmentItem を探る

簡単な流れと解説は→[データを予定表に登録したい 予定 As AppointmentItem を 探る]を見てください


他のサイトを紹介してみたり・・・

また、入り口で いきなり他店の紹介、ライバル店を紹介するのも変だけど(ぉぃぉぃ)
[Outlook 研究所]
↑ここすごい情報量です。
私も、ライバル店に負けないように、品揃えと品質を上げないとなぁ・・・

[#QA_MESSAGE][ページ内のTOPへ戻る]

ページフッター

ここまで、読んでいただきどうもです。ここから下は、広告と三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、



三流君へ メッセージを送る

感想や質問・要望・苦情など 三流君へメッセージを送る。
とても急ぎで連絡がほしい、そんな時は: [YouTubeの動画にコメントする]※通知が届くので気が付きやすいです
[twitterでDMを送る]かなぁ。※最近DMの通知が表示されなかったり、20件制限などがあるし・・
気軽に連絡してください。何か連絡手段を考えないとなぁ・・・

Outlook VBA 情報を Googleで検索する

Google
探す言葉:
ググる。↑添付,予定,本文などの単語や,オブジェクト(MailItem),プロパティ(.Body)やメソッド(.Move)などを入れて検索してみてください。

サイト指定:人気QAサイト や 一次情報MS本家を指定する
条件無し WWW 全体から検索↓指定で見つからなければ 一次情報・二次情報まとめから探る
一次情報は基本のMSDN含む microsoft.comから
まとめ一次・二次情報 Qiita 知識を記録・共有 qiita.comで個人まとめを参考に
手前味噌の三次情報 三流君メモBlog ken3memo.hatenablogから検索
QAサイトの質問から探る
QAはやっぱり人の多いYahoo知恵袋 chiebukuro.yahoo.co.jpから探る
こちらもどうぞ おしえてgoo! oshiete.goo.ne.jp
15分探して見つからなかったら?回答率90%以上 teratail.com
私も利用中 最近過疎ってる失礼 人力検索 q.hatena.ne.jp
意外と穴場? 2ch 5ch.netから探す
検索実行: ←オプション確認後に検索ボタンを押してください

期間指定:情報の鮮度も大切?
指定なし(全て)※不変の情報を得るには指定無しが一番?
3日以内 最新の更新情報を探す時など。
3ヶ月 これはあまり使わないかも
1年以内の更新なら情報鮮度もOK?バランス型
3年も経てばOfficeもバージョンUP?
検索実行: ←オプション確認後に検索ボタンを押してください

Outlook アイテム別の操作

  1. [Mail]でメールを作成したり読み込んだり
  2. [Task]で仕事・タスクを登録したり
  3. [Appointment]予定表 アポ・スケジュールの登録ほか
  4. [Contact]連絡先でアドレスや名簿管理

三流君の[Outlookヘルプの探り方]でオブジェクト、プロパティやメソッドの探り方を少し書いてみたり、

ken3memo : Outlook関係の→ [メモ・記事をチェック] / [ブックマークを見る] / [アウトルックの動画解説へ]
で、まとめてみたり※↑まとまってないじゃん、放り込んだだけでしょ・・・




Menu : [Outlook操作(TOP)] / [VBA(TOP)] / [三流君(TOP)]