オートナンバー型のあるテーブルでレコードを削除すると、欠番が出てしまいます。
Accessにとっては問題はなくても、見た目としては1から綺麗に並べておきたいという方も多いですね。
同じデザインのテーブルを作成(コピー)して、追加クエリを使ってレコードを追加すると、オートナンバーが振り直されます。
参考オートナンバーの行を切り取って、貼り付ける方法は以下の記事で解説しています。
-
オートナンバー型の番号の振り直し(切り取りと貼り付けでリセット)
Accessのテーブルでフィールドのデータ型を[オートナンバー型]にして、レコードを削除すると、そのレコードは欠番になります。 以下のテーブ ...
テーブルにデータが1件も入力されていない場合は、最適化を実行するだけでOKです。
-
ファイルサイズが大きくなってしまったら[最適化と修復]を実行
Accessのデータベースファイルは、使用していくうちに容量が大きくなっていきます。オブジェクトを編集したり、削除したりする操作を繰り返して ...
テーブルの確認
以下のようなテーブルがあります。[ID]フィールドの4と5が欠番になっています。
テーブル[T_売上]のデザインビューです。[ID]フィールドは[オートナンバー型]です。
テーブルをコピーして[テーブル構造のみ]を貼り付け
まず、番号を振りなおしたいテーブルをコピーします。
そして、貼り付けします。
そのとき[テーブルの貼り付け]ダイアログボックスが表示されます。
この時、[テーブル構造のみ]を選択して[OK]ボタンをクリックします。
ナビゲーションウィンドウに[T_売上のコピー]が作成されます。
同じ構造のテーブルですが、データは空っぽです。確認したらテーブル[T_売上のコピー]は、閉じておきます。
この空っぽのテーブル[T_売上のコピー]にテーブル[T_売上]のデータを追加していきます。
テーブルの名前はこのままで構いません。
参考オブジェクトをコピーして活用する方法は、以下の記事で解説しています。
-
テーブル・クエリなどのオブジェクトをコピーして活用する
Accessの1つのデータベース内でテーブルやクエリ、フォーム、レポートなどのオブジェクトをコピーする方法です。 コピーボタンや貼り付けボタ ...
追加クエリの作成
追加クエリを作成します。
[作成]タブを選択して、[クエリ]グループから[クエリデザイン]をクリックします。
[テーブルの表示]からテーブル[T_売上]を選択して、[追加]をクリックします。
クエリにテーブル[T_売上]が追加されたら、[テーブルの表示]は[閉じる]ボタンをクリックして閉じます。
バージョンによって異なると思いますが、[作成]タブの[クエリデザイン]をクリックすると、Microsoft 365のAccessとAccess 2021では[テーブルの追加]作業ウィンドウとして表示されます。
クエリデザインの「テーブルの追加」は作業ウィンドウに表示される
デザイングリッドにフィールドを登録
[ID]フィールド(オートナンバー型)以外のフィールドをデザイングリッドへ追加します。
[ID]以外のフィールドを[Shift]キーで選択して、デザイングリッドへドラッグします。
[クエリの種類]グループから[追加]をクリックします。
クエリの種類:追加
クエリを使用してレコードを既存のテーブルに追加します。
[追加]ダイアログボックスが表示されます。
テーブル名に[T_売上のコピー]を選択します。
▼ボタンをクリックすると、テーブルの一覧が表示されますから、[T_売上のコピー]を選択して[OK]ボタンをクリックします。
追加クエリの実行
[デザイン]タブの[実行]をクリックします。
以下のメッセージウィンドウが表示されます。[はい]をクリックします。
作成したクエリは、保存しなくてもいいですが、たびたびオートナンバーをリセットしなければならないようであれば、クエリは名前は付けて保存しておいたほうがいいですね。
保存したクエリはダブルクリックで実行できます。もちろん、元のテーブルをコピーした後に実行します。
テーブルの確認
テーブル[T_売上のコピー]を開いて確認します。
オートナンバーは振り直されていますね。
あとは、元のテーブルを削除して、コピーしたテーブルの名前を元のテーブルの名前に変更します。
参考追加クエリについては、以下の記事でも解説しています。
-
レコードの差分をテーブルに追加(追加クエリの作成)
Accessで2つのテーブルの不一致レコードを抽出した後、その差分レコードをテーブルへ追加する方法です。 参考ここでは[ドキュメントウィンド ...
-
追加クエリの作成方法(追加先テーブルのフィールドへ特定の値を表示)
1つのテーブルに別のテーブルのレコードを追加する方法です。 3個テーブルがあって、各テーブルのフィールド名は同じです。 ここでは例として、テ ...
オートナンバー型を使わずに自動的に連番を振る方法も解説しています。
-
オートナンバー型を使わずに[数値型]を使って自動的に連番を入力する
Accessのテーブルでコードなどに、オートナンバー型を使っているとなにかと不便を感じることもあります。 番号に欠番が生じた場合、再度、番号 ...