※ ChatGPTを利用し、要約された質問です(原文:「 複数の各レコードごと 」 を、上下入れ替えるには ?)
複数の各レコードごとを上下入れ替える方法は?
このQ&Aのポイント
A列の下6桁を除く数字は必ず1~10です。A列を優先キーにして、複数の各レコードごとを希望順に入れ替えたい方法を教えてください。
エリア1と表現される4******だけのレコードを連続して配置し、エリアの数と順序が変動する場合の実行方法も教えてください。
例えば、エリア順が4、2、10の場合、エリアの順序を10、4、2に入れ替える方法や、他の順序に変える方法を教えてください。
「 複数の各レコードごと 」 を、上下入れ替えるには ?
A列 の 下6桁 を除く数字は、 必ず、 1 ~ 10 です。
その 「 A列を優先キー 」 にて、「 複数の各レコードごと 」 を、 希望順 に入れ替えたいんです。
たとえば 「 4****** だけのレコード全部 ( 連続してます ) 」 を 「 エリア1 」 と 表現させて頂ます。
* 部分は、 必ず 6 桁 です。
左隅の数字 は 1 ~ 10 まで変動します。
このエリアの数は、 2 ~ 3 まで変動します。
このエリアの順序は、
「 エリアの数が2 」 の場合は、2通り、 になります。
「 エリアの数が3 」 の場合は、6通り、 になります。
マクロも、同様に、それぞれ、2通り、6通り、が必要かと思っておりますが、
私の頭が混乱してしまうので、まず下記例をどうかご教授下さいませ。
下記例の、 「 各エリア の 左隅の数字 」 を、それぞれ 「 1、2、3 」 に置換えたりすれば、なんとかなるのかなと勝手に思ったりしています。
------------------------------------------------
下記例は、左隅の数字 4、 2、 10 の場合です ( 実行後が全部で5通りになります )。
実行前 ( エリア順が 4、2、10 です )
A列
4******
・
・
4******
2******
・
・
2******
10******
・
10******
↓↓↓
実行後1 ( エリア順を 10、4、2 にさせたい )
A列
10******
・
10******
4******
・
・
4******
2******
・
・
2******
-------
実行後2 ( エリア順を 10、2、4 にさせたい )
-------
実行後3 ( エリア順を 4、10、2 にさせたい )
-------
実行後4 ( エリア順を 2、10、4 にさせたい )
-------
実行後5 ( エリア順を 2、4、10 にさせたい )
-------
実行後6 ( エリア順を 4、2、10 にさせたい ) ← これは 実行前と同じエリア順。
お礼
ご回答、誠に有難うございました。 遅くなり申し訳ございませんでした。 未熟なりに、いろいろ試行錯誤しておりました。 A列の最終行以降が 空白 であっても、完了できました。 すごいですね。