Office関連

ユーザー設定フォームに基づいてメールを作成するOutlookマクロ

Outlookには「ユーザー設定フォーム」(Custom Forms)機能があり、メールやタスクといったアイテムを作成する際のユーザーインターフェイスをカスタマイズすることができます。

フォームにはフィールドを配置でき、ユーザー定義フィールドによって、任意の情報をアイテムに付加させることができます。

今回は、ユーザー設定フォームに基づいてメールを作成し、ユーザー定義フィールドの値を設定するマクロを紹介します。

メッセージ クラスの確認

マクロからユーザー設定フォームを取扱い際、まずはメッセージ クラスをフォームの選択画面で確認しておく必要があります。

VBAコード

ItemsオブジェクトのAddメソッドの引数にメッセージ クラスを指定することで、指定したユーザー設定フォームに基づいてメールを作成できます。

また、UserPropertyオブジェクトのValueプロパティを利用することで、ユーザー定義フィールドの値を設定することができます。

Public Sub Sample01()
  With Application.GetNamespace("MAPI").GetDefaultFolder(olFolderDrafts)
    'メッセージ クラスを指定してアイテム作成
    With .Items.Add("IPM.Note.CustomMessage") 'Outlook.MailItem
      .Subject = "テストメール"
      .Body = "あいうえお" & vbNewLine & "かきくけこ"
      
      'UserPropertyオブジェクトのValueプロパティでユーザー定義フィールドの値を設定
      .UserProperties("郵便番号").Value = "903-0815"
      .UserProperties("住所1").Value = "沖縄県那覇市首里金城町1-2-3"
      .UserProperties("住所2").Value = "テストビル10階"
      
      .Display
    End With
  End With
End Sub

InspectorオブジェクトのModifiedFormPagesプロパティからPageオブジェクトを取得し、UserForm上のコントロールのようにフィールドを扱うこともできます。

Public Sub Sample02()
  Dim frm As Object
  
  With Application.GetNamespace("MAPI").GetDefaultFolder(olFolderDrafts)
    'メッセージ クラスを指定してアイテム作成
    With .Items.Add("IPM.Note.CustomMessage") 'Outlook.MailItem
      .Subject = "テストメール"
      .Body = "あいうえお" & vbNewLine & "かきくけこ"
      
      '「P.2」ページのコントロール操作
      Set frm = .GetInspector.ModifiedFormPages("P.2") 'MSForms.UserForm
      frm.Controls("TextBox1").Value = "903-0815"
      frm.Controls("TextBox2").Value = "沖縄県那覇市首里金城町1-2-3"
      frm.Controls("TextBox3").Value = "テストビル10階"
      
      .Display
    End With
  End With
End Sub

未読アイテムの件数を取得するOutlookマクロ前のページ

【感想】あかねのハネ1巻&2巻次のページ

関連記事

  1. Office関連

    Office 2013の開発者用リファレンス

    「Word2013 VBA の日本語ヘルプ」でも回答していますが、Of…

  2. Office関連

    Word 2013とWord 2010のダミー文章の比較

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

  3. Office アドイン

    [Office用アプリ]Apps for Office サミット!で登壇しました。

    21日(土)に開催されたOffice 用アプリの勉強会「Apps fo…

  4. Office アドイン

    [Office用アプリ]仕事の息抜きにピッタリ「もぐらミニ」

    KumaP氏作の作業ウィンドウアプリ「もぐらミニ」がOffice スト…

  5. Office関連

    組み込み定数を列挙するVBAマクロ

    定数の名前や値を調べたい、そんなときはTypeLib Informat…

  6. Office関連

    「VBA質問箱」にアクセスできない。

    2013/03/19 追記:ドメインが更新されVBA質問箱が閲覧で…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

Chinese (Simplified)Chinese (Traditional)EnglishFrenchGermanJapaneseKoreanRussianSpanish

最近の記事

アーカイブ

PAGE TOP