
No.2ベストアンサー
- 回答日時:
入力フォームのデザインで、メニューら[表示]-->[プロパティ]で「レコード移動時」欄を
クリックし、右端の ... をクリックして、「コードビルダ」で開いたウィンドウに下記
コードを貼り付けます。
レコードソースになっているテーブル名を「自動採番月日TBL」とし、自動採番する
フィールドは、数値型で名前を「ID」とした場合です。
これで、ご希望通りの動作になると思いますが、年が入っていないのが気になります。
このままでは、1年以上使っていると、昨年の番号の連番を取得します。
年を考慮することをお勧めします。
Private Sub Form_Current()
If Me.NewRecord = False Then Exit Sub
Dim AutoID As String
Dim MaxID As Variant
AutoID = Format(Date, "mmdd")
MaxID = DMax("ID", "自動採番月日TBL", "Left(ID,4)=" & AutoID)
If IsNull(MaxID) Then
Me.ID.DefaultValue = AutoID & "001"
Else
Me.ID.DefaultValue = AutoID & Format(Right(MaxID, 3) + 1, "000")
End If
End Sub
ありがとうございます。
教えていただいた方法をさっそく試してみましたが、あっという間に目的の事が出来ました。
年は考慮してやろうと思います。
本当にありがとうございました。
No.1
- 回答日時:
お求めの結果をテーブルの一つのフィールドの設定で出すのは無理だと思います。
画期的な方法は思いつかないのだけれど、以下参考になれば、と思います。
まず、乗り越える壁として日付が変わったという判定をどのように行うかという問題があります。
一般的には、直前の日付を調べて異なっていたら日付が変わったと見なすという方法が採られます。
日付のフィールドをカウントの日付と別に作って、規定値を「=Format(Now(),"yyyy/m/d")」とか「=Val(Format(now(),"ddmm"))」のように設定すると、後の処理が楽になります。
前者は日付形式で時刻を取ったもの、後者は連番フィールド用に数値化したものです。
その日付フィールドの値を、直前のレコードと比較します。
で、カウンタフィールドも別に設定して、日付が変わったら初期化するカウンタにします。
こちらはフォームのイベントで処理するしかないように思います。
詳しいことは省きます。
要点は、日付が変わったら初期化する。そうでなかったら直前の値に+1する。という処理を更新後処理に書き込むと言うことです。
別のアイディアとして、自動連番のフィールドから読みとるという方法があります。
この場合は、別のテーブルに日付が変わった最初の連番を登録しておきます。
日付と連番の先頭を登録するのです。
そのテーブルに登録されていない日付のときはそのレコードの連番を新規に登録します。
登録されていれば、その番号と連番の差+1が現在のカウンタ値になります。
これをお求めのフィールドに設定すればOKです。
が、これらの処理もフォームでのイベント処理にしなければなりません。
めんどくさいですな。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 派遣社員・契約社員 休みの日にメール寄越すな 4 2023/04/29 14:17
- その他(交通機関・地図) 圏央道を使って那珂ICまで 4 2023/05/07 20:25
- 政治 立民は振られた女性に金を返せなんてみっともないですよね? 3 2023/01/18 11:42
- CAD・DTP JWW-CADでDXF変換後の線が連動して消える 2 2023/01/13 11:09
- アルバイト・パート バイト シフト 5 2023/07/05 16:32
- 戦争・テロ・デモ そもそもテロは悪いことなのか? 19 2022/08/08 18:05
- その他(ネットショッピング・通販・ECサイト) カメラ付きグラスの動作不良 先日メルカリでほぼ新品のカメラ付きグラス(中国製)を買ったのですが、取扱 2 2023/07/02 19:21
- 片思い・告白 皆さんだったら連絡先を聞きますか? 5 2022/06/23 14:44
- メルカリ メルカリでのお取引について 先週19日にあるゲームのグッズをメルカリで購入しました、出品者さんは名前 2 2022/06/29 18:16
- 自動車ローン・自動車保険・車両保険 ネット自動車保険 2 2023/03/11 16:27
このQ&Aを見た人はこんなQ&Aも見ています
-
性格悪い人が優勝
できるだけ性格悪い人になって回答をお願いします。
-
「これはヤバかったな」という遅刻エピソード
寝坊だったり、不測の事態だったり、いずれにしても遅刻の思い出はいつ思い出しても冷や汗をかいてしまいますよね。
-
限定しりとり
文字数6文字以上の単語でしりとりしましょう
-
これ何て呼びますか Part2
あなたのお住いの地域で、これ、何て呼びますか?
-
自分用のお土産
国内や海外に旅行へ行った時、自分用のお土産ってどれくらい買いますか?
-
ACCESSで日付ごとに自動連番(日付+連番)する方法
Access(アクセス)
-
Accessで日付が変わると番号がリセットされる自動採番がしたい
Access(アクセス)
-
access 自動採番 年が変わるごとに0001に戻る仕組み。
その他(データベース)
-
-
4
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
5
accessでオートナンバーを使わずに「文字+数字」の自動採番する方法
Access(アクセス)
-
6
Accessのサブフォームから値を参照する方法について
その他(データベース)
-
7
ACCESS 「パラメータの入力」を消したい!!
Access(アクセス)
-
8
AccessでIDを入力したら他の項目も自動で表示
Access(アクセス)
-
9
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
10
新規レコード行を非表示にしたい
Access(アクセス)
-
11
「Access」のフォームで、同じデータの入力の手間を省くには?
Access(アクセス)
-
12
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
13
AccessのフォームのテキストボックスにLOOKUPで表示したい
Access(アクセス)
-
14
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
15
accessで重複を防ぎたい
Access(アクセス)
-
16
マクロで待機時間を作りたい
Access(アクセス)
-
17
アクセスで特定のレコードのみのレポートを印刷したいのですが。
Access(アクセス)
-
18
アクセスの初心者の質問です(空白の場合に他のフィールドを表示させたい。)
Access(アクセス)
-
19
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
20
ACCESSのフォームからデータの追加ができない
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
日付を差し込み印刷で表示した...
-
日付を昇順で並び替えし、空白...
-
クエリで日付型のIIF関数の使用
-
日付型のテキストボックスに数...
-
【Tableau Desktop】文字列から...
-
Wordの日付変換ってできますか?
-
accessで残業時間計算
-
挿入した日付の自動更新を中止...
-
Firebirdで年齢算出
-
差し込み印刷で日付の曜日を表...
-
アクセス:エクセルからのイン...
-
エクセルデータをファイルメー...
-
Wordで、ヘッダーに印刷日付を...
-
Access特有の決まりごと 日付...
-
datetime型でのソート
-
ACCESSの自動連番について
-
重複を除外したカウント方法を...
-
Accessでの支払日の計算方法
-
VBAでエクセルシートを更新...
-
マクロボタンを押すと、ファイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日付を差し込み印刷で表示した...
-
差し込み印刷で日付の曜日を表...
-
クエリで日付型のIIF関数の使用
-
【Word】 今日の「年」「月」...
-
datetime型でのソート
-
Wordで、ヘッダーに印刷日付を...
-
日付型のテキストボックスに数...
-
日付を昇順で並び替えし、空白...
-
Wordの日付変換ってできますか?
-
Word2010 フィールド内での和...
-
重複を除外したカウント方法を...
-
挿入した日付の自動更新を中止...
-
Accessでの支払日の計算方法
-
Accessで秒を時間で表示させる...
-
ACCESSの自動連番について
-
FileMaker Ver.7で2つの日付間...
-
日付のデータ型について
-
【Tableau Desktop】文字列から...
-
日付がインポートされない
-
EXCELからACCESSへのインポート...
おすすめ情報