2010-10-28 97 views
0

我使用交換機數據庫在多個Access數據庫上使用下面的代碼一個接一個地運行宏。在Data1.accdb中運行「Updata Data」宏需要登錄到SQL Server。如果用戶輸入不正確的密碼,則代碼會凍結。有關如何正確處理不正確登錄嘗試的任何建議?從Access VBA處理不正確的SQL Server登錄密碼

Set objACC = GetObject("\Data Tables\Data1.accdb") 
objACC.DoCmd.RunMacro ("Update Data") 'run macro 
objACC.Quit 

編輯:它看起來像這個問題是不是 一個不正確的登錄。我知道 宏從 「Data1.accdb」數據庫觸發時有效,但是當我殺死 時,它凍結了一條消息 關於「無法創建活動X組件」 。我會做更多的 研究,並詢問我有更多信息時更連貫的 問題。在 平均時間我會打電話給「使用 錯誤處理」答案正確,因爲 ,這讓我知道當密碼不正確 。

+0

爲什麼不宏轉換爲VBA代碼,然後你可以把正確的錯誤在他們處理。 – 2010-10-28 23:00:09

回答

0

喜歡的東西:

On Error GoTo Error_LogonError 

    Dim db_path As String 
    db_path = "\Data Tables\Data1.accdb" 
    Set objACC = GetObject(db_path) 
    objACC.DoCmd.RunMacro ("Update Data") ''#run macro 
    objACC.Quit 

Error_LogonError: 
    Debug.Print "hi, there was an error logging on to " & db_path