Access VBA質問箱 IV

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

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


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

【9486】オートナンバーの更新 照さん 07/5/31(木) 16:49 質問[未読]
【9487】Re:オートナンバーの更新 クロ 07/5/31(木) 17:49 回答[未読]
【9491】Re:オートナンバーの更新 クロ 07/6/1(金) 8:08 発言[未読]
【9493】Re:オートナンバーの更新 照さん 07/6/1(金) 9:18 質問[未読]
【9494】Re:オートナンバーの更新 クロ 07/6/1(金) 9:40 発言[未読]
【9495】Re:オートナンバーの更新 照さん 07/6/1(金) 10:09 質問[未読]
【9501】Re:オートナンバーの更新 07/6/1(金) 13:23 回答[未読]
【9514】Re:オートナンバーの更新 照さん 07/6/5(火) 16:55 お礼[未読]

【9486】オートナンバーの更新
質問  照さん  - 07/5/31(木) 16:49 -

引用なし
パスワード
   初心者です。
各レコードにオートナンバーで番号をつけたデータベースを編集したいと思っています。レコードを削除したり、レコードの並び替えを行った後に、オートナンバーで付与されたレコード番号を新たに1番から更新する方法をご教示ください。

【9487】Re:オートナンバーの更新
回答  クロ  - 07/5/31(木) 17:49 -

引用なし
パスワード
   どのように実行するのか分かりませんが…例として
コマンドボタン(コマンド1とします)のクリック時のイベントを
[イベントプロシージャ]としてVBエディタを開き

Private Sub コマンド1_Click()
DoCmd.RunSQL "Alter Table テーブル名 Alter Column 初期化したいオートナンバーフィールド名 Counter(1);"
End Sub

でどうでしょう?

【9491】Re:オートナンバーの更新
発言  クロ  - 07/6/1(金) 8:08 -

引用なし
パスワード
   PS
テーブルからレコードを全削除してから行ってください。

【9493】Re:オートナンバーの更新
質問  照さん  - 07/6/1(金) 9:18 -

引用なし
パスワード
   クロ さん

早速、コメントをいただきましたが、初心者のためどうすれば良いのか分かりません。

>コマンドボタン(コマンド1とします)のクリック時のイベント
何の意味か、どうすることを指すのか、全くわかりません。

>[イベントプロシージャ]としてVBエディタを開き
VBエディタを開いて、以下のステートメントのマクロを作成する意味でしょうか。

>Private Sub コマンド1_Click()
Privateの意味はなんでしょうか。
マクロの名を「コマンド1_Click」にする意味でしょうか。

>初期化したいオートナンバーフィールド名"
フィールドに付与した「名称」でよいのですか。それとも「フィールド1」といった番号付きのフィールド名でしょうか。

追伸でいただいた、レコードを全て削除とは何のための準備でしょうか。

引き続きご支援をお願いします。

【9494】Re:オートナンバーの更新
発言  クロ  - 07/6/1(金) 9:40 -

引用なし
パスワード
   ご質問の意味をワタシがはき違えていたみたいですね。

現存するレコードのレコード中の1つを削除した場合に、オートナンバーを
再採番したい?

現存するレコードを並び替えた時にオートナンバーを並び替えた通りに再採
番したい?

ということですか?

オートナンバー型のデータを連続番号に再設定する方法
http://support.microsoft.com/kb/881386/ja
※httpは半角に変更してください。

ただし、オートナンバーに関しての認識は
**ヘルプより**
オートナンバー型を使用すると、レコードを追加するときに
自動的に固有の番号が入力されるフィールドを作成することができます。
**ここまで***
なので行番号的な意味合いよりは個体識別番号だと思われた方がいいと
思います。

【9495】Re:オートナンバーの更新
質問  照さん  - 07/6/1(金) 10:09 -

引用なし
パスワード
   クロ さん

当初の質問の説明が不十分だったようで申し訳ありません。
再度、記載します。

現在、約20万件のレコードがあります。
この内で不要になったレコード、約5万件ほどを削除しました。ただし、レコード番号としては連続ではなく、飛び飛びの番号を削除しています。

また、あらたなレコードを1万件ほどを追加しました。ところが、オートナンバーのため従来のデータの最後から、番号が付与されています。利用する際、オートナンバーで付与された番号に従って出力されるため、レコードの並び替えをして、再度、1から連続した番号を付与したいと思っています。

適切な説明になっているか自信がありませんが、よろしくお願いします。

【9501】Re:オートナンバーの更新
回答    - 07/6/1(金) 13:23 -

引用なし
パスワード
   こんにちわ。雅です。

>この内で不要になったレコード、約5万件ほどを削除しました。ただし、レコード番号としては連続ではなく、飛び飛びの番号を削除しています。
>
>また、あらたなレコードを1万件ほどを追加しました。ところが、オートナンバーのため従来のデータの最後から、番号が付与されています。利用する際、オートナンバーで付与された番号に従って出力されるため、レコードの並び替えをして、再度、1から連続した番号を付与したいと思っています。

番号を再度振りなおすということでよろしいですか?

手順
1.同じ構造のテーブルを用意します。(テーブルをデザインで開いて名前をつけて保存。オートナンバーは長整数に変更する)
2.追加クエリをつくり既存テーブルから [1] で作成したテーブルに追加する(フィールドはすべて)
3.既存テーブル自体を削除し作り直す(オートナンバーをリセットするのでテーブルを作り直す。リセットするSQLが判るならそれでも可)
4.[2] のデータを作り直したテーブルに追加する。(オートナンバーのフィールドを除いて追加クエリを作る)

でわ。

【9514】Re:オートナンバーの更新
お礼  照さん  - 07/6/5(火) 16:55 -

引用なし
パスワード
   雅さん

何とか望みのレコード番号を更新できました。
ありがとうございました。

クロさん

コメントありがとうございました。

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