- 締切済み
accessのサブフォーム毎に連番をふり直す
accessのフォーム入力において、メインのフォームにサブフォームが一つ配置されています。 単票形式のメインフォームには、フィールド「ID」(主キー)と「社員名」と「日付」、「評価」が格納されておさり、「ID」で紐付けされたサブフォーム(帳票またはデータシート形式)に、社員の行動記録が入力されます。 ※行動記録:08:30~10:00 A社訪問 …など。 サブフォームにデータが入力される際、行動した時系列順に項番を振って管理したいと考えています。 データ例 メイン ID 日付 社員名 評価 1 2016/03/16 田中一郎 C 2 2016/03/16 鈴木政夫 D 3 2016/03/17 田中一郎 B サブ ID 項番 開始時間 終了時間 業務内容 1 1 08:30 10:00 A社訪問 1 2 10:25 11:40 見積書作成 2 1 08:30 12:00 会議 3 1 12:50 16:30 現場監督 3 2 17:00 21:50 報告書作成 クエリやイベントプロシージャにDcountやDMax関数、carrentrecordなどを使ったアドバイスのある回答やブログを見付けて、色々と試してみたのですが、どれも上手く行きません。 一番簡単そうなDMaxをサブフォームの項番の既定値に =NZ(DMax("項番", "サブフォームのテーブル名")+1,1) とするも、「項番」の最大値+1の「3」が表示されます。 データの入力は、日付当日とは限らず、また、入力順序も、(新規にレコードを追加する場合を除き)ID順だとは限りません(後日修正を行う場合も有ります) こういった場合の対処方法について、ご教示をお願いします。 なお、当方の技能レベルは、VBAのコードの意味を理解しないまま、他人の作ったコードをコピーして、何となく修正して使用できている、と言った程度です。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
- panacon
- ベストアンサー率31% (214/679)
- NotFound404
- ベストアンサー率70% (288/408)
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)