ユーザーがボタンをクリックして保存し、新しい場所に移動するときに、次のコードを実行して、設定された場所で使用されている最高のクライアントIDを見つけて1を追加しました。レコードを保存して新しいレコードに移動する前に。他のエラーを処理中に、私はこの行に必要な過去のエラーオブジェクトを取得できません。 "[ClientID]"、 "tClientinfo"、 "[CorpsName] =" & "'defaultcorps'")Null、0、DMax( "[ClientID]"、 "tClientinfo" [CorpsName] = "&" 'defaultcorps' "))+ 1"実行時エラー424オブジェクトが必要
もっと混乱した同様の質問を見ると、コードに間違いがあります。私はあなたがあなたのDMAX()ステートメントが正しく作成された場合の結果を把握することから始めする必要があると思う任意の提案を事前にデビッド
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
アンソニーDMAX機能が私の約束であることを指摘してくれてありがとうございます。フィールド、テーブル、およびcriteraの正しい構文を理解することはできませんが。 – DavidR
上記の私の更新答えを見てください。私はdefaultcorpsが変数でデータ値ではなかったという事実を忘れていました。このアップデートでは、探しているものが得られるはずです。 –
Anthonyコードが動作していただきありがとうございます。 – DavidR