Microsoft Access VBA MsgBox не отвечает, что я делаю не так?

Поэтому я составил лист проверки активов. Есть кнопка "Оформить заказ", я хочу, чтобы при нажатии на нее появлялось сообщение "Требуется идентификатор пользователя", если поле идентификатора пользователя оставлено пустым. Тем не менее, это не так с моим текущим кодом, он просто принимает нажатие кнопки, несмотря ни на что. Я что-то здесь упускаю? (код ниже)

Private Sub CHECK_OUT_BUTTON_Click()
    If (IsNull(Me.USER_ID)) Then
        MsgBox "User ID is required."
    Else
        If Me.Status.Value = "Checked Out" Then
           MsgBox "This device is currently in use."
        Else
            If (Me.Status.Value = "Available") And (Not IsNull(Me.USER_ID)) Then
                Me.Status.Value = "Checked Out"
                RunCommand acCmdSaveRecord
                Me.Requery
            End If
        End If
    End If
End Sub

1 ответ

Решение

Похоже, поле ID пользователя не было зарегистрировано как NULL и вместо этого была просто пустая строка.

Смена строки:

If(IsNull(Me.USER_ID)) Then

Для того, чтобы:

If(Nz(Me!USER_ID.Value) = "") Then

Должны ловить пустые идентификаторы пользователей

Другие вопросы по тегам