Доступ к VBA: сброс даты в форме - PullRequest
0 голосов
/ 30 апреля 2019

Я пытаюсь создать кнопку с кодом VBA (по клику), чтобы очистить форму для запуска новой записи или перезапуска записи.Приведенный ниже код работает ...

Public Sub clearForms()
Dim frm As Form
Set frm = Forms!Person_Name

Dim ctl As Control

For Each ctl In frm.Controls
    With ctl
        Select Case .ControlType
            Case acTextBox
                .Value = " "
            Case acCheckBox
                .Value = False
            Case acComboBox
                .SetFocus
                .SelText = " "
            Case acListBox
                .Value = Null
            Case acDate

        End Select
    End With
Next ctl

MsgBox "forms cleared"
End Sub

для всего, кроме поля Date, которое у меня есть.Я не могу понять, как сбросить дату до 00: 00: 00: 00 или просто пустое поле.Я бы предпочел пустую коробку, но у меня проблемы с поиском какой-либо информации о том, как это сделать.Спасибо!

Обновлен код:

Public Sub clearForms()
Dim frm As Form
Set frm = Forms!Person_Name

Dim ctl As Control

For Each ctl In frm.Controls
    With ctl
        Select Case .ControlType
            Case acTextBox
                .Value = " "
            Case acCheckBox
                .Value = False
            Case acComboBox
                .SetFocus
                .SelText = " "
            Case acListBox
                .Value = Null
            Case acDate
                .Value = #12:00:00 AM#
        End Select
    End With
Next ctl

MsgBox "forms cleared"
End Sub

1 Ответ

0 голосов
/ 30 апреля 2019

То есть:

Case acDate
    .Value = #00:00:00#

Но, как уже отмечалось, элемент управления «Дата» отсутствует, поэтому вы можете уменьшить его до:

For Each ctl In frm.Controls
    With ctl
        Select Case .ControlType
            Case acTextBox, acComboBox, acListBox
                .Value = Null
            Case acCheckBox
                .Value = False
        End Select
    End With
Next ctl
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...