Excelから、ACCESSに移行すると、オートナンバーが自動で割り振られます。

この、オートナンバーは、削除すると、欠番になります。

折角の連番が、欠番になると気持ち悪いと思います。

そんな、オートナンバーにまつわるお話をします。

オートナンバー

こんにちは。伊川(@naonaoke)です。

オートナンバーに関しては、何度か動画でも、ブログでも何度か説明をしています。

このオートナンバーが、欠番になると、Excelしか使っていない人は、気持ち悪くなります。

これは、ACCESSの宿命なのです。

そのオートナンバーの利用の仕方を説明します。

このブログは、こんな人にお勧め

今回のテーマ
  • ACCESSの勉強を始めたばかりの人
  • オートナンバーが、なぜ自動で採番されるかわからない人
  • 検索フォーム等を作成している人

解決

オートナンバーは、オブジェという事が理解できます。オートナンバーは、勝手に採番されるので、欠番になっても気にしないことです。

しかし、どうしても、オートナンバー(連番)を利用したければ、クエリで利用しましょう。

連番について

ACCESSに関して、なぜ、オートナンバー型が自動に採番されるのかというと、

テーブルには、順番という概念がありません。

ユーザーが、テーブルに貼り付けた順番で表示するために、ACCESSが、勝手に割り振ると考えて下ださい。

だから、ACCESSにとっては、欠番なんてどうでもいいのです。

しかし、どうしても連番を使いたい人は、クエリを使いましょう。

連番を振る 作業手順 その1 クエリでオートナンバーを採番する


左端のIDにおいて、1の次が、21になっています。

ACCESSでは、あるあるのですか、クエリでオートナンバーを振りなおします。



このような数式を記載します。

これで、連番は完成です。

しかし、本物の主キーは、IDであり、ID_2ではありません。

ここ部分は勘違いしてはいけません。

連番を振る 作業手順 その2 自動連番を採番する

実務では、自動採番するなら、このようなことは、しません。

日付毎に連番を採番することをお勧めします。

2021年5月23日の1番目としておけば、検索も早くなります。

主キーという事をしらない人は、オートナンバー型を主キーとして利用します。

自動採番は便利なのですが、欠番が発生すると、単にランダム採番と同じです。



このような数式を入力します。

このような数式は良くつかいますので、メモ帳に記載して、カンペしておくと便利です。

連番を振る 作業手順 その3 なぜ、自動連番を連動させるのか?

私の経験上、日付と連番を連動させるのが一番良い方法です。

検索が楽です。

以前、原則、検索は、主キーで実行するようにと、動画でも、ブログでも言いました。

日付と連番の検索は、例外なのです。

原則と例外を間違えないでください。

複数条件の検索については、下記の記事を参考にしてください。

連番を振る 作業手順 その4 自動採番したら、次にやるべきことは?

自動採番に関しては、DCount関数を利用します。

ACCESSでDCount関数を利用すると、ACCESSの作動が、重くなります。

自動採番後は、新しいテーブルを作成して別管理することをお勧めします。

以前、15万件のデータに自動採番した時は、20分くらい時間がかかりました。

そして、15万件を自動採番したクエリの作動も重くて使い物になりませんでした。

だから、新しいテーブルを作り直しました。

ACCESSとDCount関数は、相性が良くないのです。

連番を振る 作業手順 その5 番外編 テーブルのオートナンバーをリセットするには?


一旦、IDがない状態にします。



このように再設定すると、オートナンバーはリセットされます。

欠番がなくなり、綺麗に連番が振られます。

ここがポイント

ここがポイント
Function8.png
オートナンバーの説明が以上になります。この説明ができるようになるまで、2年くらいの時間を要しています。それは、ACCESSの原理原則を理解しないで、派手なVBA等を勉強していたからです。

ExcelのBVAもACCESSのVBAも書き方は同じです。

しかし、VBAを利用する箱が違います。

ACCESSには、VBAよりももっと便利なリレーションという武器があります。

その点を抑えたうえで、ACCESSを勉強しましょう。

動画とブログでわかりやすくExcelとACCESSを紹介しています

まとめ

今回も、ACCESSの原理原則を説明しました。

直前の疑問を解決するわけではないです。

しかし、この原理原則が、あとあと、疑問解決とカギとなります。

今回も最後までお読みいただきありがとうございました。

 

 

今回のサンプルファイルは、No226です。

サンプルファイルを購入希望の方はココをクリック
サンプルファイル
VBAを勉強中の悩みを解決
  • なんで動かないの?
  • もうやだ!
  • どこにも情報がない!
スポンサーリンク

Twitterでフォローしよう

おすすめの記事