2012-04-29 2 views
0

Outlook에서 전자 메일을받을 때 MS Access에서 서브 루틴을 실행하려고합니다.Outlook에서 액세스 하위 호출 - 메서드 실행 _Application 실패했습니다.

Access.Application 개체와 해당 Run 메서드를 사용하고 있습니다.

다음과 같은 오류가 발생합니다. 개체 실행 _ 응용 프로그램이 실패했습니다.

Private Sub Application_newmail() 
    MsgBox "New mail" 
    Dim accessdb As Access.Application 
    Set accessdb = CreateObject("Access.Application") 

    accessdb.opencurrentdatabase "C:/Camps.accdb", False 

    accessdb.Run "test" 

    accessdb.CloseCurrentDatabase 

    Set accessdb = Nothing 

End Sub 

"test"서브 루틴은 Checkdb 모듈에서 빈 서브 (실제 서브를 시도한 후 실패한 후)입니다.

Office 2007을 실행 중입니다.

답변

1

Outlook 대신 VBScript를 사용하여 코드를 테스트했습니다. 귀하의 코드는 데이터베이스 경로의 백 슬래시로 슬래시를 변경 한 경우를 제외하고 나에게 잘 돌아갔다. "C : \ Camps.accdb"

"Public"으로 표시된 "Test"기능/서브가 있는지 확인하십시오.

Public Function Test() 
    MsgBox "Test Works" 
End Function 
+0

놀라운 소식입니다. 그런 바보 같은 것이 문제라고 나는 믿을 수 없다. 내 슬래시를 경로의 백 슬래시로 변경하고 이제는 아름답게 실행됩니다. 고마워요! – bsg