- ベストアンサー
Accessからoutlookのプロシージャーを実行する方法
- Accessからoutlookのプロシージャーを実行する方法を教えてください。
- AccessからExcelならエクセルマクロを作成し、アクセス側で実行することでプロシージャーが実行されます。しかし、Accessからoutlookの場合はどのようにすれば実行できるのでしょうか?
- Outlookに標準モジュールを作成してもアクセス側で実行するコードが作成できず、困っています。Accessからoutlookのプロシージャーを実行する方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
OutlookのプロシージャをVBAで外部から実行する 有効な方法はないようです。海外でもこのことに 関していくつかのQ&Aがありますが、これだという 方法は見つかりません。 ただ、無理やりにもするとなると、Outlookの標準 モジュールではなく、ThisOutlookSessionに、たとえば Public Sub myout() MsgBox "あいうえお" End Sub を設定し、Accessでは、 Sub test() On Error Resume Next Dim OutApp As Object Set OutApp = CreateObject("Outlook.Application") OutApp.Session.Logon OutApp.myout OutApp.Session.Logoff Set OutApp = Nothing End Sub のようにします。 実行の方法は、まずAccessを終了しておいて、 Outlookを起動し、OutlookのThisOutlookSessionを マクロを有効にして開きます。 次に、Accessを起動してファイルをオープン testプロシージャを実行し、エンタキーを何度か 叩けば、メッセージボックスが表示されます。 これ以外の順序ですると大抵エラーが出ます。 したがって、外部のVBAでOutlookを操作する場合は Outlookのプロシージャを直接走らせるような方法は 無理だと思われます。 名前空間の利用により、フォルダの中身の取り出し、 あるいはメールの送信などならば、外部からのVBA でもできると思いますが。
その他の回答 (1)
- kamonegi2012
- ベストアンサー率0% (0/1)
> 外部のVBAでOutlookを操作する場合は > Outlookのプロシージャを直接走らせるような方法は > 無理だと思われます。 ぐぐったら出てきました。 http://www.ka-net.org/blog/?p=1909
お礼
ありがとうございました。
お礼
ありがとうございました。