
No.1ベストアンサー
- 回答日時:
こんにちは。
KenKen_SP です。> オートナンバーのように自動で番号を発行したいフィールドがあります。
VBA でやることになります。
下記ユーザー定義関数 NewNumber は、yyyymmdd-000 形式の番号を返します。
コードを標準モジュールに貼り付け、コード内のテーブル名やフィールド名
を書き換えて下さい。
'---ここから----------------------------------------------------------
'yyyymmdd-000 形式の番号発行関数
Public Function NewNumber() As String
Dim strFld As String
Dim strTbl As String
Dim strDat As String
Dim lngNum As Long
'書き換えて下さい---------------
strFld = "number" 'フィールド名
strTbl = "table1" 'テーブル名
'-------------------------------
strDat = Format$(Date, "yyyymmdd")
lngNum = Nz(DMax( _
"Right$(" & strFld & ",3)", _
strTbl, _
strFld & " LIKE '" & strDat & "-*'"), 0) + 1
NewNumber = strDat & "-" & Format$(lngNum, "000")
End Function
'---------------------------------------------------------ここまで----
使い方ですが、テーブルの規定値には直接設定できません。したがって、
フォームを作成することになりますが、方法は2つ。
1. 自動で番号を発行したいフィールドをソースとするコントロールの
プロパティで[データ]-[規定値]欄に NewNumber() と入力する
2. Form の BeforeInsert イベントなどに次のコードを記述する
Private Sub Form_BeforeInsert(Cancel As Integer)
'「自動で番号を発行したいフィールド」をソースとする
’コントロール名に書き換える
Me![number] = NewNumber()
End Sub
ありがとうございました。
中身は理解できていませんが、
うまくいきました。
これから使用している関数などを調べて、
意味を理解したいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) 条件付き書式 別のシートで色付けされたセルデータの転記漏れを防ぐ書式を入れたい 4 2022/04/22 06:36
- 消費者問題・詐欺 日本語と中国語で留守電残されました。何言ってるかわかんないのでスルーしてるんですが… 3 2023/06/30 10:38
- 中古車 先日、高速道路をETCで利用しその領収書をが必要となったので、サイトから発行しようとしたのですが、中 4 2022/06/05 17:00
- ポイントサービス・マイル 店舗電停のTポイント 1 2022/04/24 19:40
- Android(アンドロイド) スマホ、ロック機能なんて要らない。何とかまるきり動作させないようにできないか? 1 2022/05/19 18:48
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Android(アンドロイド) スマホ、ロック機能なんて要らない。何とかまるきり動作させないようにできないか? 3 2022/05/19 18:49
- クレジットカード 楽天カード 1 2022/09/20 12:21
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
INSERT INTO ステートメントに...
-
Accessのフィールド数が255しか...
-
フィールド数の多すぎる・フィ...
-
accessで重複を防ぎたい
-
アクセス エラーを数値「0」に...
-
Accessでテーブルの値をテキス...
-
ExcelのデータをコピーでACCESS...
-
ACCESS VBAにてCSV...
-
ACCESSでの連番作成
-
SQLServer2005のSQL文での別名...
-
ACCESSでの改行コード
-
空白も連結したい、あるいは複...
-
ACCESSのレポート印刷について
-
文字型フィールドの数値データ...
-
ACCESSで和暦を西暦に・・・
-
[ACCESS97]SQLの書き方
-
Accessで、固定アルファベット+...
-
アクセス A列コピー B列貼り...
-
ACCESSで400以上のフィールドが...
-
ファイルメーカーの繰り返しフ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
INSERT INTO ステートメントに...
-
Accessのフィールド数が255しか...
-
ACCESSで400以上のフィールドが...
-
SQLServer2005のSQL文での別名...
-
アクセス エラーを数値「0」に...
-
accessのレポートで元になるテ...
-
Accessでテーブルの値をテキス...
-
ACCESSでの改行コード
-
ACCESSでテーブルのチェックを...
-
ExcelのデータをコピーでACCESS...
-
ACCESS検索★ある文字を複数のフ...
-
Access 昇順・降順で並び替え...
-
アクセス メモ型 255文字...
-
アクセス A列コピー B列貼り...
-
【Access】フォームで自動計算...
-
ACCESSでオートナンバーを任意...
-
Access:リンクテーブルマネー...
-
ACCESS VBAにてCSV...
-
Accessで、固定アルファベット+...
-
主キーはオートナンバー型のID...
おすすめ情報