フォームで新規入力をする際に自動で連番を振りたいです
初心者でいろいろと調べているのですがうまくいきません
下記のような連番を振る方法を教えてください
"Eyymmdd A "E"は固定で yy(西暦2ケタ)mm(月)dd(日)A(Aから始め、同じ日だとB,C,…と最大26(Z)まで)振っていく。日が変わるとまたAから始まる
「テーブル名」連絡文書E
「クエリ名」連絡文書Eクエリ
「フォーム名」連絡文書E
「フィールド名」管理番号(テキスト型)
E110105 A
E110130 A
E110130 B
E110130 C
E110202 A…
と"E"を固定 yy(西暦2ケタ)mm(月)dd(日)Aから始まり、同日であればB,C~と
日が変わるとAからまた始まるという連番をふりたいです
煮詰まってしまい、どうしてよいかわからない次第です
初心者にとても難しい事は承知しておりますが、何卒よろしくお願い致します
No.1ベストアンサー
- 回答日時:
VBAで行わねばなりませんけど大丈夫?
新規入力時に今日の日付と照らし合わせて連番を振る場合です。
昨日の文書の連番や未来の日付の連番は考えてません。
Alt + F11 を押して、VBEに切り替えて
メニュー→挿入→標準モジュールにて
Function getNewSeq()
If Format(Date, "yymmdd") = Mid(DMax("管理番号", "連絡文書E"), 2, 6) Then
If Right(DMax("管理番号", "連絡文書E"), 1) = "Z" Then
MsgBox "Zまで一杯です"
Exit Function
End If
getNewSeq = "E" & Format(Date, "yymmdd") & " " & _
Chr(Asc(Right(DMax("管理番号", "連絡文書E"), 1)) + 1)
Else
getNewSeq = "E" & Format(Date, "yymmdd") & " " & "A"
End If
End Function
さらに、フォームでも
デザインビューでフォームのプロパティのイベントの、「レコード移動時」に
Private Sub Form_Current()
If Me.NewRecord Then
Me!管理番号 = getNewSeq
End If
End Sub
としてみてください。
※フォーム名とテーブル名が同じなので、
今後VBAの記述が増えれば、パッと見で分かりにくいので
「フォーム名」連絡文書E→F_連絡文書E
とかにしておいた方が宜しいかと。
クエリもね。
この回答への補足
お世話になっております
汗かきかきご教示いただいたVBAに取り組んでいますが、
どうしてもデバックがでてしまい、解決方法がわかりません
実行時エラー3078
入力テーブルまたはクエリ’連絡文書E’がみつかりませんでした。そのテーブルやクエリが存在していること、または名前が正しいことを確認してください
と、出るので、テーブル、クエリを作成し直したのですが、エラーのままです
デバックの箇所は
If Format(Date, "yymmdd") = Mid(DMax("管理番号", "連絡文書E"), 2, 6) Then
です
フォームのプロパティのイベントの「レコード移動時」のコードビルダの入力箇所を
フォームをデザインビューで開いた時の詳細連番を振りたいと思っている”管理番号”のテキストボックスのプロパティのイベントの「更新前処理」にしてみたり、
フォームのイベントのビルドのコードビルダにしてみたりしました
(思いっきり間違えたことをしているのか??と感じながら(涙))
恐れ入りますが、何卒ご教示をお願いいたします
早速のご教示ありがとうございました
ご連絡が大変遅くなりまして申し訳ございません
緊急事態が発生してしまい、本日より改めて対応する所存です
またご教示をお願いすると思いますで、
何卒よろしくお願い申し上げます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- MySQL SQLについて質問です。 SELECT TO_CHAR(TO_DATE('90-10-08.'YY- 4 2022/05/13 20:55
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- 借地・借家 最後の月の家賃の支払いについて 1 2023/05/20 19:02
- 楽天市場 楽天市場の店舗の不手際によるキャンセルと受取拒否について(長文です) お世話になっております。 11 4 2022/09/22 18:46
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- 消費者問題・詐欺 法務事務所とのやり取りの件です 1 2022/05/10 21:51
- アルバイト・パート アルバイト採用後、連絡が来ない 1 2022/11/15 21:54
- 不動産業・賃貸業 修理に対応してくれない場合はどうしたらよいのでしょうか? 4 2023/04/04 12:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Docuworksに代わるソフトを教え...
-
Wordでページ指定し、メールで...
-
Wordのページ数が勝手に増えて...
-
前回終了した位置から再開
-
Excelが固まってしまった。
-
Wordの差込印刷でNextRecordを...
-
「Docu Works」と「PDF」の違い...
-
ワードで新旧対照表を作成
-
ワード2010 A4で作成したファイ...
-
会社のPCからの私的な印刷
-
2つのワードファイルを1つにす...
-
【word2003 excel2003】差し込...
-
ワードの表、別文書からコピペ...
-
ワードの限界ページや容量はど...
-
「改ページ」が表示されません
-
「ファイルに不正な構造が見つ...
-
WORD2002の差込印刷文書の表示
-
WORD カーソルが文頭から動か...
-
Word2003 書き換えができない。
-
Wordの文書をメール送信
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Docuworksに代わるソフトを教え...
-
Wordの差込印刷でNextRecordを...
-
「Docu Works」と「PDF」の違い...
-
Wordでページ指定し、メールで...
-
ワードの表、別文書からコピペ...
-
WORDで作成した文書を、編集・...
-
複数のWord文書の共通個所の書...
-
AcrobatでPDFにフリーハンドで...
-
2つのワードファイルを1つにす...
-
文字がグレーで表示される
-
ワードで新旧対照表を作成
-
ワード2010 A4で作成したファイ...
-
「リンク貼り付け」で、リンク...
-
Excelが固まってしまった。
-
提出受ける文書の「作成日時」...
-
【Word2010】新規文書の「文書N...
-
Wordのページ数が勝手に増えて...
-
pdfファイルが開いてもすぐ閉じ...
-
印刷プロパティの給紙は自動だ...
-
【word2003 excel2003】差し込...
おすすめ情報