サブフォームで自動採番
お世話になります。ACCESS2000で制作しています
主テーブル(マスタ)に顧客コード(主キー)、
サブテーブル(トラン)に顧客コードと枝番
というフィールドがあります。
顧客コードでリレーションシップを結んでいます。
それぞれのテーブルからクエリを経てフォームをつくり
(Q_マスタ→F_マスタ、Q_トラン→F_トラン)
また、検索フォームも別に作っています。
F_トランはF_マスタに埋め込んでいます。
検索フォームで検索して該当するデータが無い場合
DoCmd.OpenForm "F_マスタ", , , , acFormAdd
で新規フォームを呼び出します。
このときサブフォームの枝番に自動的に「1」を入れたいのですが
(開く時でも読み込み時でもいつでもいいのですが)
どうしたら良いのでしょうか?
ちなみに今は
サブフォームのプロシージャで
Private Sub Form_Open(Cancel As Integer)
If Me.NewRecord Then
Me![枝番] = 1
Else
Me![枝番] = DMax("枝番", "Q_トラン") + 1
End If
End Sub
としています。
こうするとQ_マスタの一番上のデータが
例えばQ_トランレコードを2つ持っていると
「3」と出てしまいます。
どのようにすればいいのでしょうか。
よろしくお願いします。
お礼
とても勉強になりました!! ありがとうございました!!