Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1916 / 2272 ツリー ←次へ | 前へ→

【4629】条件付の自動採番について CONDOR 05/3/17(木) 13:54 質問[未読]
【4631】Re:条件付の自動採番について 小僧 05/3/17(木) 16:02 発言[未読]
【4632】Re:条件付の自動採番について CONDOR 05/3/17(木) 19:31 質問[未読]
【4633】Re:条件付の自動採番について 小僧 05/3/17(木) 20:52 回答[未読]
【4651】Re:条件付の自動採番について CONDOR 05/3/18(金) 17:18 質問[未読]
【4653】Re:条件付の自動採番について 小僧 05/3/18(金) 18:03 回答[未読]
【4654】Re:条件付の自動採番について CONDOR 05/3/18(金) 18:19 質問[未読]
【4655】Re:条件付の自動採番について 小僧 05/3/18(金) 19:10 回答[未読]

【4629】条件付の自動採番について
質問  CONDOR  - 05/3/17(木) 13:54 -

引用なし
パスワード
   教えていただけますでしょうか。

伝票No    行No
000000    06
000001    07
000001    08
000001    09
000001    10
000001    11
000001    12
000001    13
000003    02
000003    03
000003    04
000003    05
000006    01
000006    02
000006    03
000006    04
000006    05
000006    06
000006    07
000006    08
000006    09
000006    10
000006    11
000006    13
000009    01
000009    02
000009    03
000009    04
000009    06
000012    01
000012    02
000012    03
000012    04
000012    05
000012    07
000012    09
000012    10
000012    11
000012    12
000012    13


このようなテーブルがあり、
1.伝票Noが変わった際には行Noは01から
2.行Noは最大が13になるように
自動で採番したいのですが、
どのようにすればよろしいのでしょうか。

ご教授お願いいたします。

【4631】Re:条件付の自動採番について
発言  小僧  - 05/3/17(木) 16:02 -

引用なし
パスワード
   ▼CONDOR さん:
こんにちは。

提示された内容ですと、どのようになさりたいかの
意図が伝わりにくいように思われます。
伝票Noに合わせて行Noを採番しなおせば良いのでしょうか…。

提示されたテーブルからどのような結果を望まれるのか、
実際の値を出して頂けると回答しやすくなるかと思います。

【4632】Re:条件付の自動採番について
質問  CONDOR  - 05/3/17(木) 19:31 -

引用なし
パスワード
   >小僧 さん

わかりにくいですよね。
申し訳ございません。

伝票No 行No
000000    01
000001    01
000001    02
000001    03
000001    04
000001    05
000001    06
000001    07
000003    01
000003    02
000003    03
000003    04
000006    01
000006    02
000006    03
000006    04
000006    05
000006    06
000006    07
000006    08
000006    09
000006    10
000006    11
000006    12
000009    01
000009    02
000009    03
000009    04
000009    05
000012    01
000012    02
000012    03
000012    04
000012    05
000012    06
000012    07
000012    08
000012    09
000012    10
000012    11
000012    12
000012    13

このようなテーブルがあり、
1.伝票Noが変わった際には行Noは01から
2.行Noは最大が13になるように
自動で採番したいのですが、
どのようにすればよろしいのでしょうか。
ちなみに伝票Noの行が13を超えることはないので
伝票Noを増やしたりすることはありません。

すみません。
こんなカンジでわかりますでしょうか
よろしくお願い申し上げます

【4633】Re:条件付の自動採番について
回答  小僧  - 05/3/17(木) 20:52 -

引用なし
パスワード
   ▼CONDOR さん:
こんばんわー。

あまり綺麗なやり方ではないので、
他の方の意見も参考にしてくださいな。

やり方は先ほどと同じく、
SQLビューに貼り付けるやり方です。

SELECT A_TBL.伝票No, DCount("*","A_TBL","行No <= " & [行No] & " And 伝票No =" & [伝票No]) AS New行No
FROM A_TBL;

こんな感じでいかがでしょうか?

【4651】Re:条件付の自動採番について
質問  CONDOR  - 05/3/18(金) 17:18 -

引用なし
パスワード
   ▼小僧 さん:

ありがとうございます。
私があまりわかっていないこともあるので、
まずは
A_TBLという名前の下記のようなテーブルを作って

伝票No
000000
000000
000000
000000
000000
000001
000001
000001
000001
000001
000001
000002
000002
000002
000002
000002
000003
000003
000003
000003
000003
000003
000003
000003
000003
000003
000003
000003
000004
000004
000004
000004
000004
000004
000004
000004
000004
000004
000004

クエリを新規作成し、SQLビューに
小僧さんのおっしゃった
SELECT A_TBL.伝票No, DCount("*","A_TBL","行No <= " & [行No] & " And 伝票No =" & [伝票No]) AS New行No
FROM A_TBL;
を貼り付けてみたのですが、#エラーと出てしまいます。
やり方のどこが悪いのかがわからなく途方にくれています・・・。

SQLの文の中に何か私が入れるべき数値があるのでしょうか
それとも、000001みたいな整数でないのを私が調整しないといけないのでしょうか
なんとなく13という数字が式にないなぁとも思ったのですが・・・

初心者なもので、さっぱり取り付くシマがないんです。
もう一度教えていただけませんでしょうか。
よろしくお願い申し上げます

【4653】Re:条件付の自動採番について
回答  小僧  - 05/3/18(金) 18:03 -

引用なし
パスワード
   ▼CONDOR さん: 
こんばんは。説明不足ですみません。
 
『【4632】Re:条件付の自動採番について』
にて提示されたテーブルを「A_TBL」とします。

フィールド名は「伝票No」,「行No」
データ型は共に数値型で、
フィールド名にある書式をそれぞれ「000000」,「00」とします。

フィールドが数値型であれば先ほどのSQLをクエリに貼り付ければ
クエリの結果に「New行No」というフィールドが出現するはずです。

まずはここまで出来るか、試してみましょう。

【4654】Re:条件付の自動採番について
質問  CONDOR  - 05/3/18(金) 18:19 -

引用なし
パスワード
   ▼小僧 さん:
早速のお返事ありがとうございます。
試してみました!

まず、クエリの結果に「New行No」というフィールドが出現しました
(これは前のときも出現はしていました。
ですが、前はA_TBLの書式を000000や00にしていなかったので
そこは直せました。)
ですが、
やっぱり#エラーが並んで表示されています。。。

次はどうすればよろしいでしょうか
ご教授お願いします。

【4655】Re:条件付の自動採番について
回答  小僧  - 05/3/18(金) 19:10 -

引用なし
パスワード
   ▼CONDOR さん:
すみません。もう一度確認なのですが、

>データ型は共に数値型で、

こちらは試されていらっしゃいますか?

それと

>SQLの文の中に何か私が入れるべき数値があるのでしょうか
>それとも000001みたいな整数でないのを私が調整しないといけないのでしょうか
>なんとなく13という数字が式にないなぁとも思ったのですが・・・

こちらについてですが、クエリの中で行っている事は、
同一の「伝票No」の中で「行No」が何番目に小さいかを
判別させているため、同一の「伝票No」が13個以上なければ
「行No」は13を超えることは無い様になっています。

1916 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078253
(SS)C-BOARD v3.8 is Free