※ ChatGPTを利用し、要約された質問です(原文:Access日付から月度入力)
Access日付から月度入力についての質問
このQ&Aのポイント
Access2007を使用して取引管理の作成を勉強中ですが、フォームのレコード移動時に月度を自動入力したいです。
現在、取引IDには年月日と連番が入力されていますが、月度フィールドに上記の法則に従ってデータを入力させたいです。
どのようにすれば月度を自動入力することができるのか、ご教授いただけないでしょうか?
現在Access2007を使用して取引管理の作成を勉強しているのですが、下記の内容を実現できず行き詰ってしまいました。
フォームのレコード移動時に
Private Sub Form_Current()
If Me.NewRecord = False Then Exit Sub
Dim AutoID As String
Dim MaxID As Variant
AutoID = Format(Date, "yyyymmdd")
MaxID = DMax("取引ID", "取引マスタ", "Left(取引ID,8)='" & AutoID & "'")
If IsNull(MaxID) Then
Me.取引ID.DefaultValue = "'" & AutoID & "01" & "'"
Else
Me.取引ID.DefaultValue = "'" & AutoID & Format(Right(MaxID, 2) + 1, "00") & "'"
End If
End Sub
として”取引マスタ”テーブルの”取引ID”へ年月日8桁+連番2桁のデータ(2010111201等)が入力されています。これに併せて”月度”フィールドへ下記法則に乗っ取ってデータを入力させたいのですが、実現できずにいます。
”取引ID”の年月日の下4桁
0115~0214 → 1
0215~0314 → 2
0315~0414 → 3
0415~0514 → 4
0515~0614 → 5
0615~0714 → 6
0715~0814 → 7
0815~0914 → 8
0915~1014 → 9
1015~1114 → 10
1115~1214 → 11
1215~0114 → 12
上記のように実現するには、どのようにすればよいのでしょうか?
ご指南宜しくお願い致します。