• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:自動採番について)

Access2000で銀行管理DBを作成する際の自動採番について

このQ&Aのポイント
  • Access2000で銀行管理DBを作成する際に、入力番号の自動採番方法を知りたいです。入力番号の構成は年と月を含み、数値10桁で連番にしたいです。
  • 入金用と出金用のテーブルを作成し、それぞれにデータ入力用フォームも作成したいと考えています。
  • 実現するためには、採番テーブルを別に作成して、定義とVBA記述の方法を知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 私なら、テーブルに[年]、[月]、[連番](全て長整数型)のフィールドをそれぞれ用意します。 あと、主キーフィールドは別に用意し、これは年月関係なくそのテーブル全体で連番にします。(手っ取り早くオートナンバーでいいと思います。) 入力番号は、別にフィールドを用意してもいいし、フォーム上で表示のみでもいいと思います。 表示のみの場合は、フォームに非連結のテキストボックス(入力番号)を用意して、適当なイベントに、 Me!入力番号.Value = Format(Me!年, "0000") & Format(Me!月, "00") & Format(Me!連番, "0000") のように記述すればいいでしょう。 入力番号フィールドを用意する場合も、同様(上記の非連結が連結になるだけ)です。 年と月は手入力として、連番を自動入力する場合は、適当なイベントに、 If DCount("連番", "入金用", "年 = " & CLng(Me!年.Value) & " AND 月 = " & CLng(Me!月.Value)) = 0 Then   Me!連番.Value = 1 Else   Me!連番.Value = DMax("連番", "入金用", "年 = " & CLng(Me!年.Value) & " AND 月 = " & CLng(Me!月.Value)) End If と記述します。 あとは、年・月の未入力時の対応などのエラートラップを追加して下さい。

jetstream
質問者

お礼

早々とご指導いただきありがとうございました。 また質問ありましたらお願い致します。

すると、全ての回答が全文表示されます。

関連するQ&A