アクセスシステムとOutlookの統合を完了しようとしています。電子メールが受信トレイに入った後にOutlookスクリプトをトリガーする
電子メールが特定の受信トレイに入ったときに、Outlookがスクリプトを起動する必要があるということが、システムの基本です。このスクリプトは、Access DBを開き、それ自身の機能を実行してその受信トレイを通過し、電子メール内の添付ファイルをデータベースにインポートします。
現在、両方のスクリプトは、Outlookがアクセスとアクセスを呼び出している限り、「仕事」です。問題は、Outlookがスクリプトを実行するときです。メッセージがメールボックスに実際に入る前です。アクセスアプリケーションが起動し、受信ボックスを空としてスキャンし、メッセージが実際に受信ボックスに入る直前に閉じます。
スクリプトで「一時停止」ループを追加しようとしましたが、アクセスアプリを開く前に電子メールが読み込まれるまで待つようにしましたが、「一時停止」の期間電子メールを読めるようにします。ここで
は、Outlookで私のスクリプトです。この時点で
Sub ExecuteDealRequest(item As Outlook.MailItem)
Dim currenttime As Date
currenttime = Now
Do Until currenttime + TimeValue("00:00:30") <= Now
Loop
Dim AccessApp As Access.Application
Set AccessApp = CreateObject("Access.Application")
AccessApp.OpenCurrentDatabase ("C:\commHU\Comm HU Request.accdb"), False
AccessApp.Visible = True
AccessApp.DoCmd.RunMacro "Macro1"
Set AccessApp = Nothing
End Sub
:私は、スクリプトを起動するためにOutlookのルールを使用しています:
Apply this rule after the message arrives
With Pricing Request in the Subject
and on this computer only
Move it to the Pricing Requests folder
and run Project.ExecuteDealRequest
and stop processing more rules
これがあるとしてすべてのヘルプは、素晴らしいことです私が働く必要がある最後の部分
ない正確な複製で、それをこのway-コードを試してみることです - このリンクは、使用する方法を示していますOutlookの「イベントあり」コード:http://stackoverflow.com/questions/37355580/download-and-save-attachment-from-email-automatically-to-excel/37410783#37410783電子メールがあなたはそれを処理するためにいくつかのコードを起動することができます。 –
私は現在のプロジェクトにコードを追加しようとしましたが、グローバル変数とプライベートWithEvents(私はまだVBに新しいです)の外で使用されている問題があります。 「オブジェクトモジュールでのみ有効」と言われています – mattlore