2013-04-26 157 views
1

嗨給一些上下文代碼來自一個Access數據庫,這是從我以前的員工留給我,不幸的是,我不是很擅長VBA。識別VBA代碼

我將不勝感激任何幫助,以確定其目的。

Private Sub Command83_Click() 
On Error GoTo Err_Command83_Click 

Dim stDialStr As String 
Dim PrevCtl As Control 
Const ERR_OBJNOTEXIST = 2467 
Const ERR_OBJNOTSET = 91 
Const ERR_CANTMOVE = 2483 

Set PrevCtl = Screen.PreviousControl 

If TypeOf PrevCtl Is TextBox Then 
    stDialStr = IIf(VarType(PrevCtl) > V_NULL, PrevCtl, "") 
ElseIf TypeOf PrevCtl Is ListBox Then 
    stDialStr = IIf(VarType(PrevCtl) > V_NULL, PrevCtl, "") 
ElseIf TypeOf PrevCtl Is ComboBox Then 
    stDialStr = IIf(VarType(PrevCtl) > V_NULL, PrevCtl, "") 
Else 
    stDialStr = "" 
End If 

Application.Run "utility.wlib_AutoDial", stDialStr 

Exit_Command83_Click: 
Exit Sub 

Err_Command83_Click: 
If (Err = ERR_OBJNOTEXIST) Or (Err = ERR_OBJNOTSET) Or (Err = ERR_CANTMOVE) Then 
    Resume Next 
End If 
    MsgBox Err.Description 
    Resume Exit_Command83_Click 

End Sub 

回答

1

常量ERR _...Error Codes

該腳本檢查PrevCtl是一個文本 - ,List或ComboBox,並設置的串stDialStr是否取決於框。最後,它會使用給定的參數啓動一個外部AutoDial程序。

Application.Run "utility.wlib_AutoDial", stDialStr 
+1

它的目的是當您單擊窗體上的按鈕時運行。 – 2013-04-26 15:20:35