wazawaza
wazawaza
2023/06/17 (土) 18:29:01
hatenaさん、ありがとうございます。
早速試してみましたが「オブジェクトが必要です」...😅
まず、ダブルクリックするのは「F_依頼履歴一覧」の「fld_依頼ID」。
その「fld_依頼ID」の値の代入先は、
「F_依頼入力」の「txt_依頼ID」です。
追加・更新・削除・読込はなんとか動いております。
非連結の「F_依頼入力」の関連していると思われる記述の全体です。
'##################################
'### btn_最新ID取得をクリックした時 ###
'##################################
Private Sub btn_最新ID取得_Click()
Me.btn_最新ID取得.Enabled = True '引続き最新IDを取得するため「btn最新ID取得」は使用可能に
Me.btn_追加.Enabled = True '最新IDを取得後を条件に「btn追加」を使用可能に
Const prefix As String = "L" '「Laminate」の頭文字 "L"
Dim maxID As String
maxID = DMax("fld_依頼ID", "T_依頼") '最終IDを取り出す
Dim lastNum As Long
lastNum = Replace(maxID, prefix, "") '最終IDから頭文字"L"を除き、数値型へ代入する
Dim newID As String
newID = prefix & Format(lastNum + 1, "000000") '+1して桁を揃えて頭文字"L"と結合
Me.txt_依頼ID.DefaultValue = "'" & newID & "'" '既定値へ代入
End Sub
'############################
'### btn_新規をクリックした時 ###
'############################
Private Sub btn_新規_Click()
Const prefix As String = "L" '「Laminate」の頭文字 "L"
Dim maxID As String
maxID = DMax("fld_依頼ID", "T_依頼") '最終IDを取り出す
Dim lastNum As Long
lastNum = Replace(maxID, prefix, "") '最終IDから頭文字"L"を除き、数値型へ代入する
Dim newID As String
newID = prefix & Format(lastNum + 1, "000000") '+1して桁を揃えて頭文字"L"と結合
Me.txt_依頼ID.DefaultValue = "'" & newID & "'" '既定値へ代入
Call initializeForm
End Sub
'######################
'### hatenaさんのコード ###
'######################
Private Sub Form_Open(Cancel As Integer)
Dim fld As DAO.Field
With Forms!F_依頼履歴一覧.Recordset
For Each fld In .Fields
Me.txt_依頼ID.Value = fld_依頼ID.Value
Next
End With
End Sub
'##########################
'### レコード移動時のID採番 ###
'##########################
Private Sub Form_Current()
Me.btn_最新ID取得.Enabled = True '「btn最新ID取得」を使用可能に
Me.btn_追加.Enabled = False '「btn追加」を使用不可に(最新ID取得に導く仕掛け)
Const prefix As String = "L" '「Laminate」の頭文字 "L"
Dim maxID As String
maxID = DMax("fld_依頼ID", "T_依頼") '最終IDを取り出す
Dim lastNum As Long
lastNum = Replace(maxID, prefix, "") '最終IDから頭文字"L"を除き、数値型へ代入する
Dim newID As String
newID = prefix & Format(lastNum + 1, "000000") '+1して桁を揃えて頭文字"L"と結合
Me.txt_依頼ID.DefaultValue = "'" & newID & "'" '既定値へ代入
End Sub
通報 ...