1

こんにちは、いくつかのコンテキストを提供するために、以下のコードは、前の従業員から私に残された Access データベースからのものです。残念ながら、私は 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
4

1 に答える 1

1

Const ERR_...エラーコードです

このスクリプトは、 PrevCtlが Text-、List、または ComboBox のいずれであるかをチェックし、Box に応じてstDialStrの文字列を設定します。最後に、指定されたパラメーターを使用して外部 AutoDial プログラムを開始します。

Application.Run "utility.wlib_AutoDial", stDialStr
于 2013-04-26T13:19:52.617 に答える