Я работал над следующим кодом, когда пользователь нажимает на кнопку, чтобы сохранить и перейти к новой записи, в которой Access определяет самый высокий идентификатор клиента, используемый для установки местоположения, а затем добавляет к нему 1. Перед сохранением записи и перехода к новой записи. Во время работы с другими ошибками, но я не могу пройти мимо объекта ошибки, требуемого в этой строке. "Me.ClientID = IIf (DMax (" [ClientID] "," tClientinfo "," [CorpsName] = "&" 'defaultcorps' ") Является Null, 0, DMax (" [ClientID] "," tClientinfo "," [CorpsName] = "&" 'defaultcorps' ")) + 1"Ошибка времени выполнения 424 Требуемый объект
Чем больше я смотрю на подобные вопросы, тем больше смущает, я понимаю, что не так с кодом. Заранее спасибо за любые предложения Давида
Private Sub Save_Record_Click()
'declare variables for default values
Dim defaultinterviewr As String
Dim defaultcorps As String
'Variables get their values
defaultinterviewr = Me.Interviewer.Value
defaultcorps = Me.Corps.Value
'Check to see if ClientID field is Blank.
If IsNull(Me.ClientID) Then
'Check that Corps field is filled in
If IsNull(Me.Corps) Then
MsgBox "Corps must be entered before saving record.", vbOKOnly
Me.Corps.SetFocus
'set client id base on corps by finding the highest id and adding 1 to that number
Else
Me.ClientID = IIf(DMax("[ClientID]", "tClientinfo", "[CorpsName]=" & "'defaultcorps'") Is Null, 0, DMax("[ClientID]", "tClientinfo", "[CorpsName]=" & "'defaultcorps'")) + 1
End If
End If
MsgBox "Done", vbOKOnly
'save record
'DoCmd.RunCommand acCmdSaveRecord
'Me.stateidnum1 = ""
'open new record
'DoCmd.GoToRecord , , acNewRec
'set field default value
'Me.Interviewer.Value = defaultinterviewr
'Me.Corps.Value = defaultcorps
'Me.Child_Subform.Form.AllowAdditions = True
End Sub
Anthony Спасибо, что указав, что функция DMAX не работает, это моя проблема. Хотя я не могу понять правильный синтаксис для поля, таблицы и критерия. – DavidR
См. Мой обновленный ответ выше. Я пропустил тот факт, что defaultcorps - это переменная, а не значение данных. Это обновление должно производить то, что вы ищете. –
Anthony Спасибо, что работает код. – DavidR