В моей базе данных есть форма журнала событий, в которой пользователь может заполнить информацию и сохранить запись. Форма закрывается на сохранение. У меня есть 3 поля, которые являются обязательными, остальные необязательны. Это работало некоторое время, когда, если какое-либо из обязательных полей оставалось пустым, пользователь видел сообщение об ошибке, сообщающее ему, что пропало, а затем предлагалось вернуться к форме и внести изменения или закрыть или не сохранять. После заполнения всех обязательных полей пользователь нажимает «Сохранить», и запись закрывается при закрытии формы.
По какой-либо причине возникли проблемы с генерируемыми сообщениями об ошибках. Если пользователь не сможет заполнить одно или несколько полей, появятся правильные сообщения об ошибках, но затем появится пустое диалоговое окно Access без текста и только с кнопкой «ОК». Если пользователь нажимает эту кнопку, он перебирает все сообщения об ошибках, а затем закрывает форму, не запрашивая правки. Мне нужно заставить форму проверять обязательные поля, отображать сообщения об ошибках, а затем предлагать пользователю закрыть и не сохранять или возвращаться и редактировать. Я должен упомянуть, что кнопка «Сохранить» находится в макросе [Click Macro] , стандартная кнопка «Сохранить запись» с закрытой формой. У меня были некоторые проблемы с этим изначально в VBA
Ниже мой код:
Private Sub Tags_AfterUpdate()
Me.Tags.Requery
End Sub
Private Sub Form_BeforeUpdate(Cancel As Integer)
Cancel=False
If IsNull(Me.EventArea) Then
MsgBox "Must add event area", vbcritical, "Required Field"
Me.EventArea.BorderColor = vbRed
Cancel = True
End If
If IsNull(Me.EventTitle) Then
MsgBox "Must add Title", vbcritical, "Required Field"
Me.EventTitle.BorderColor = vbRed
Cancel = True
End If
If IsNull(Me.EventDesc) Then
MsgBox "Must add description", vbcritical, "Required Field"
Me.EventDesc.BorderColor = vbRed
Cancel = True
End If
End Sub
Private Sub Form_Current()
Me.EventCity.Requery
Me.EventRegion.Requery
End Sub