今だけ人気マンガ100円レンタル特集♪

Access2003での連番について。

T_商品
ID:オート
CODE:数値型6桁
その他何項目かのフィールドがありCODEの部分に000001~003000くらいまで入力がされています。
003001番から自動で+1していくにはフォームでどのように指定したらいいでしょうか??

既に003000まで入力されているので最大値を求めてやってみたりしているのですが
中々うまくいきません。
よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

すでに入力されているものに続けて連番を振っていくということでいいいのですね



>CODE:数値型6桁
>その他何項目かのフィールドがありCODEの部分に000001~003000くらいまで入力がされ>ています。
前に0が付いていますが数値型で間違いないですね?
(前0は書式でつけているだけですね)

いろんな方法がありますが
規定値に次の番号を自動的に表示するようにしましょうか

フォームの開くとき、レコード挿入時、削除後確認に下のようなコードを書きます

Private Sub Form_AfterDelConfirm(Status As Integer)
Me.CODE.DefaultValue = DMax("CODE", "テーブル名") + 1
End Sub

Private Sub Form_AfterInsert()
Me.CODE.DefaultValue = DMax("CODE", "テーブル名") + 1
End Sub

Private Sub Form_Open(Cancel As Integer)
Me.CODE.DefaultValue = DMax("CODE", "テーブル名")+ 1
End Sub

この回答への補足

早速のご回答ありがとうございます。

Private Sub Form_AfterDelConfirm(Status As Integer)
Me.CODE.DefaultValue = DMax("CODE", "テーブル名") + 1
End Sub
↑削除後確認

Private Sub Form_AfterInsert()
Me.CODE.DefaultValue = DMax("CODE", "テーブル名") + 1
End Sub
↑挿入後処理

Private Sub Form_Open(Cancel As Integer)
Me.CODE.DefaultValue = DMax("CODE", "テーブル名")+ 1
End Sub
↑開く時

上記三点をフォームのプロパティに入力しましたが、

コンパイルエラー
メソッドまたはデータメンバが見つかりません
とでてしまいました。

設定の仕方を間違えたのでしょうか??

補足日時:2008/05/05 19:03
    • good
    • 0

テキストボックスの「規定値」プロパティを以下のようにします。


=DCount("ID","T_商品") + 1
=DMax("CODE","T_商品") + 1
上は既存の数+1、下は最大値+1です。

他の方の回答のように、イベントで仕込んでも良いのでしょう。
失敗する原因は"テーブル名"を文字通り記述したからではないですか?
回答は"テーブル名"(の所は実際のテーブルの名前を書いてください)と言っているのです。
だから、"T_商品"にしないとエラーになってしまいます。

この回答への補足

ご回答ありがとうございます。

テーブル名はT_商品でやってまして、教えていただいたとおり
やってはいるのですが・・・。

規定値のプロパティはIDとCODEの二ヵ所に入力するするということ
でしょうか??

補足日時:2008/05/07 12:23
    • good
    • 0
この回答へのお礼

色々とご迷惑をお掛けいたしました。

上記ににも記載させていただきましたが、
テキストボックスの名前を変更したらうまくいきました!!
貴重なご意見ありがとうございました。

お礼日時:2008/05/07 14:57

>この行が黄色くなっています。




フォームのプロパティーのイベントタブから開く時を選び
そこに
Me.CODE.DefaultValue = DMax("CODE", "テーブル名") + 1
を書き込んでみてください

この回答への補足

ご回答ありがとうございます。

Me.CODE.DefaultValue = DMax("CODE", "テーブル名") + 1

初めに教えていただいた時に入力済となっております。
何度もすみません・・・。

補足日時:2008/05/07 12:17
    • good
    • 0
この回答へのお礼

色々とご迷惑をお掛けいたしました。

テキストボックスの名前を変更したらうまくいきました!!
本当に助かりました!!

お礼日時:2008/05/07 14:55

どの行が黄色くなってます?



参照設定に参照不可のものはありませんか?

この回答への補足

度々すみません。

Private Sub Form_Open(Cancel As Integer)

この行が黄色くなっています。

補足日時:2008/05/07 11:01
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング