現在オフラインです。再接続するためにインターネットの接続を待っています

[ACC2002] オートメーションを使用して Access から Outlook を介して メッセージを送信する方法

この記事は、以前は次の ID で公開されていました: JP161088
サポート期間が終了した「サポート技術情報」資料に関する免責事項
この資料は、マイクロソフトでサポートされていない製品について記述したものです。そのため、この資料は現状ベースで提供されており、今後更新されることはありません。
概要

この資料は、OLE オートメーションを使用して、Access から Outlook を介して Microsoft Exchange へメッセージを送信する方法について説明しています。
詳細
このサンプルは、ファイルを添付したメッセージをプロシージャから Microsoft Exchange に送信します。

手順

  1. データベース ウィンドウの [モジュール] タブをクリックして、モジュールを新規に作成します。
  2. モジュール ウィンドウから、次のサンプル プロシージャを入力します。
    '  ----------------------------------------------------------------------------'  プロシージャ名 : SendMessage'  引数 : DisplayMsg - 作成したメッセージを送信するか表示するかを指定します。'         AttachmentPath - メッセージに添付したいファイルのパスを指定します。'                          省略可能です。'  ----------------------------------------------------------------------------  Sub SendMessage(DisplayMsg As Boolean, Optional AttachmentPath)      Dim objOutlook As Outlook.Application      Dim objOutlookMsg As Outlook.MailItem      Dim objOutlookRecip As Outlook.Recipient      Dim objOutlookAttach As Outlook.Attachment        '  MAPI セッションに接続します。      Set objOutlook = CreateObject("Outlook.Application")        ' メッセージを作成します。      Set objOutlookMsg = objOutlook.CreateItem(olMailItem)      With objOutlookMsg              ' メッセージの受信者を追加します。          Set objOutlookRecip = .Recipients.Add("TO :")          objOutlookRecip.Type = olTo          ' メッセージの CC の受取人を追加します。          Set objOutlookRecip = .Recipients.Add("CC :")          objOutlookRecip.Type = olCC            ' メッセージの BCC の受取人を追加します。          Set objOutlookRecip = .Recipients.Add("BCC :")          objOutlookRecip.Type = olBCC            ' メッセージの text、subject、importance を割り当てます。          .Subject = "Title : "          .Body = "本文 : " & vbCrLf & vbCrLf          .Importance = olImportanceHigh  'High importance            '  メッセージにファイルを添付します。          If Not IsMissing(AttachmentPath) Then              Set objOutlookAttach = .Attachments.Add(AttachmentPath)          End If                         For Each objOutlookRecip In .Recipients              objOutlookRecip.Resolve          Next            ' 送信するかメッセージを表示するかを第 1 引数で判断します。          If DisplayMsg Then              .Display          Else              .Send          End If      End With      Set objOutlook = Nothing  End Sub'  ----------------------------------------------------------------------------
  3. Microsoft Outlook 10.0 Object Library への参照を設定します。
    1. モジュール ウィンドウをデザイン ビューで開きます。
    2. [ツール] メニューの [参照設定] をクリックします。
    3. [参照可能なライブラリ ファイル] ボックスで [Microsoft Outlook 10.0 Object Library] をクリックします。このオプションが表示されていない場合は、Msoutl.OLB を参照します。
    4. [OK] をクリックします。
  4. [デバッグ] メニューの [ロード済みモジュールのコンパイル] をクリックするか、ツール バーの [ロード済みモジュールのコンパイル] ボタンをクリックします。
  5. エラーが表示された場合は、入力ミスがないかどうかを再度チェックしてください。
  6. プロシージャを実行します。デバッグ ウィンドウに以下のように入力して、Enter キーを押します。第 2 引数として指定するファイルは添付ファイルです。
    SendMessage True, "C:\Letter.txt"

補足

このサンプルで、メッセージを送信する際に Outlook のメッセージを表示させたくない場合は、プロシージャを実行する際の第 1 引数に False を指定します。
例 : SendMessage False, "C:\Letter.txt"
ファイルを添付しないで送信する場合は、プロシージャを実行する際の第 2 引数を省略します。
例 : SendMessage True
関連情報
この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 161088 (最終更新日 1997-04-23) をもとに作成したものです。

OutSol OutSol97 OutSol98
プロパティ

文書番号:161088 - 最終更新日: 11/10/2003 14:13:14 - リビジョン: 3.0

  • Microsoft Access 97 Standard Edition
  • acc active activex automation createobject exchange kbhowto mail message office ole outlook vba vbaac vbaall オートメーション メール メッセージ 送信 KB161088
フィードバック