質問するログイン新規登録

回答編集履歴

8

追記

2019/06/03 06:50

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -32,4 +32,9 @@
32
32
  wFormat = DLookUp("F_Format","T_Num","F_NumCode='顧客'")
33
33
  wMgtCode= DLookUp("F_MgtCode","T_Num","F_NumCode='顧客'")
34
34
  [番号のテキストボックス]=Format(wMgtCode, wFormat)
35
+ ```
36
+ - 次回用の採番番号の設定
37
+ 登録が確定するタイミング(登録ボタンなどのイベント)で
38
+ ```VBA
39
+ CurrentDB.ExeCute "update T_Num set F_MgtCode = F_MgtCode + 1 where F_NumCode='顧客'"
35
40
  ```

7

訂正

2019/06/03 06:50

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -26,7 +26,7 @@
26
26
  |担当者|1|1|999999|000000|
27
27
  |商品|1|1|999999|000000|
28
28
 
29
- - 上記を元に顧客番号の採番コードは
29
+ - 上記を元に顧客番号の新規採番を取得するコードは
30
30
  ```VBA
31
31
  Dim wFormat As String, wMgtCode As Long
32
32
  wFormat = DLookUp("F_Format","T_Num","F_NumCode='顧客'")

6

訂正

2019/06/03 06:30

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -19,16 +19,17 @@
19
19
  追記
20
20
  --
21
21
  サンプルとして作るとしたらの例を挙げておきます。
22
+ - T_Num
22
23
  |F_NumCode|F_MgtCode|F_Min|F_Max|F_Format|
23
24
  |:--|--:|--:|--:|:--|
24
25
  |顧客|1|1|999999|000000|
25
26
  |担当者|1|1|999999|000000|
26
27
  |商品|1|1|999999|000000|
27
28
 
28
- 上記を元に顧客番号の採番のコードは
29
+ - 上記を元に顧客番号の採番のコードは
29
30
  ```VBA
30
31
  Dim wFormat As String, wMgtCode As Long
31
- wFormat = DLookUp("F_Format","採番テーブル","F_NumCode='顧客'")
32
+ wFormat = DLookUp("F_Format","T_Num","F_NumCode='顧客'")
32
- wMgtCode= DLookUp("F_MgtCode","採番テーブル","F_NumCode='顧客'")
33
+ wMgtCode= DLookUp("F_MgtCode","T_Num","F_NumCode='顧客'")
33
34
  [番号のテキストボックス]=Format(wMgtCode, wFormat)
34
35
  ```

5

推敲

2019/06/03 06:30

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -21,14 +21,14 @@
21
21
  サンプルとして作るとしたらの例を挙げておきます。
22
22
  |F_NumCode|F_MgtCode|F_Min|F_Max|F_Format|
23
23
  |:--|--:|--:|--:|:--|
24
- |顧客番号|1|1|999999|000000|
24
+ |顧客|1|1|999999|000000|
25
- |担当者番号|1|1|999999|000000|
25
+ |担当者|1|1|999999|000000|
26
- |商品番号|1|1|999999|000000|
26
+ |商品|1|1|999999|000000|
27
27
 
28
28
  上記を元に顧客番号の採番のコードは
29
29
  ```VBA
30
30
  Dim wFormat As String, wMgtCode As Long
31
- wFormat = DLookUp("F_Format","採番テーブル","F_NumCode='顧客番号'")
31
+ wFormat = DLookUp("F_Format","採番テーブル","F_NumCode='顧客'")
32
- wMgtCode= DLookUp("F_MgtCode","採番テーブル","F_NumCode='顧客番号'")
32
+ wMgtCode= DLookUp("F_MgtCode","採番テーブル","F_NumCode='顧客'")
33
33
  [番号のテキストボックス]=Format(wMgtCode, wFormat)
34
34
  ```

4

追記

2019/06/03 06:24

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -14,4 +14,21 @@
14
14
  尚、番号を管理する場合、管理するデータが削除されていく仕様でない限りリサイクルは行いません。
15
15
 
16
16
  また、採番テーブルは初期データが登録されている前提です。
17
- ※一度も採番されていない場合は`F_MgtCode=F_Min`の状態。
17
+ ※一度も採番されていない場合は`F_MgtCode=F_Min`の状態。
18
+
19
+ 追記
20
+ --
21
+ サンプルとして作るとしたらの例を挙げておきます。
22
+ |F_NumCode|F_MgtCode|F_Min|F_Max|F_Format|
23
+ |:--|--:|--:|--:|:--|
24
+ |顧客番号|1|1|999999|000000|
25
+ |担当者番号|1|1|999999|000000|
26
+ |商品番号|1|1|999999|000000|
27
+
28
+ 上記を元に顧客番号の採番のコードは
29
+ ```VBA
30
+ Dim wFormat As String, wMgtCode As Long
31
+ wFormat = DLookUp("F_Format","採番テーブル","F_NumCode='顧客番号'")
32
+ wMgtCode= DLookUp("F_MgtCode","採番テーブル","F_NumCode='顧客番号'")
33
+ [番号のテキストボックス]=Format(wMgtCode, wFormat)
34
+ ```

3

訂正

2019/06/03 06:22

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  番号を取得するには
5
5
  ```VBA
6
- Dim wFormat, wMgtCode
6
+ Dim wFormat As String, wMgtCode As Long
7
7
  wFormat = DLookUp("F_Format","採番テーブル","F_NumCode=[対象の採番コード]")
8
8
  wMgtCode= DLookUp("F_MgtCode","採番テーブル","F_NumCode=[対象の採番コード]")
9
9
  [番号のテキストボックス]=Format(wMgtCode, wFormat)

2

修正

2019/06/03 04:38

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -3,7 +3,10 @@
3
3
 
4
4
  番号を取得するには
5
5
  ```VBA
6
+ Dim wFormat, wMgtCode
7
+ wFormat = DLookUp("F_Format","採番テーブル","F_NumCode=[対象の採番コード]")
6
- [番号のテキストボックス]=DLookUp("F_MgtCode","採番テーブル","F_NumCode=[対象の採番コード]")
8
+ wMgtCode= DLookUp("F_MgtCode","採番テーブル","F_NumCode=[対象の採番コード]")
9
+ [番号のテキストボックス]=Format(wMgtCode, wFormat)
7
10
  ```
8
11
  登録により入力が確定した場合には、更新クエリー等により、`F_MgtCode+1`する必要があります。
9
12
  但し、それが`F_Max`を超えた場合は、番号をリサイクルする仕様なら`F_Min`に置き換える必要があります。

1

追記

2019/06/03 04:36

投稿

sazi
sazi

スコア25437

answer CHANGED
@@ -5,7 +5,10 @@
5
5
  ```VBA
6
6
  [番号のテキストボックス]=DLookUp("F_MgtCode","採番テーブル","F_NumCode=[対象の採番コード]")
7
7
  ```
8
- 登録により入力が確定した場合には、更新クエリー等により、F_MgtCode+1する必要があります。
8
+ 登録により入力が確定した場合には、更新クエリー等により、`F_MgtCode+1`する必要があります。
9
- 但し、それがF_Maxを超えた場合は、番号をリサイクルする仕様ならF_Minに置き換える必要があります。
9
+ 但し、それが`F_Max`を超えた場合は、番号をリサイクルする仕様なら`F_Min`に置き換える必要があります。
10
10
 
11
- 尚、番号を管理する場合、管理するデータが削除されていく仕様でない限りリサイクルは行いません。
11
+ 尚、番号を管理する場合、管理するデータが削除されていく仕様でない限りリサイクルは行いません。
12
+
13
+ また、採番テーブルは初期データが登録されている前提です。
14
+ ※一度も採番されていない場合は`F_MgtCode=F_Min`の状態。