2

我知道这可能是一个愚蠢的问题,但你知道他们在说什么。我在 Access 数据库中有 VBA,其中包含 On Click 命令。本质上,它是一个带有组合框和用户登录时间戳的表单。单击按钮后,将根据从组合框中选择的名称加载数据输入表单。我希望登录表单在数据输入表单打开后关闭。问题是无论我把 DoCmd.Close 放在哪里,愚蠢的表格都不会关闭!

万一这很重要,此表单将设置为在用户打开数据库时自动打开。

下面是与按钮关联的事件过程的 VBA。

Option Compare Database

Private Sub TimeInButton_Click()
Dim strLoginForm As String

If Me.AgentCombo = "Amber" Then
  strForm = "frmCustomersAmber"
ElseIf Me.AgentCombo = "Amanda" Then
  strForm = "frmCustomersAmanda"
ElseIf Me.AgentCombo = "Brett" Then
  strForm = "frmCustomersBrett"
ElseIf Me.AgentCombo = "Marcus" Then
  strForm = "frmCustomersMarcus"
ElseIf Me.AgentCombo = "Terrah" Then
  strForm = "frmCustomersTerrah"

End If


'------------------------------------------------------------
' TimeInButton_Click
'
'------------------------------------------------------------

On Error GoTo TimeInButton_Click_Err

    On Error Resume Next
    DoCmd.GoToRecord , "", acNewRec
    If (MacroError <> 0) Then
    Beep
    MsgBox MacroError.Description, vbOKOnly, ""
End If

DoCmd.OpenForm strForm

TimeInButton_Click_Exit:
Exit Sub

TimeInButton_Click_Err:
MsgBox Error$
Resume TimeInButton_Click_Exit

End Sub
4

1 回答 1

6

DoCmd.Close 采用可选参数,使其更加可靠。例如,

DoCmd.Close acForm, "MyFormName"
于 2012-12-13T20:27:46.800 回答