A1に会社名のカタカナ。B1に会社名があります。
10行程度すでにデータが入っている状態で
途中行に新たに1行を挿入したのち
増えた行数分(全部で11行)も含めて並べ替えをするという作業を行います。
その場合、マクロで以上の手順を踏むと
1度目はうまくいくのですが
2度目になると相対参照でマクロを設定したにも関わらず
11行目までしかソートされません。
12行目がソートの範囲に入らないのです。
行が増えた分も含めて、すべての行数をソートするには
どのようなVBAを組めばいいのでしょうか?
ご教授ください。
No.3ベストアンサー
- 回答日時:
#02です。
代替案は後で示しますが、補足文の内容だけでは「論理的に不可能」です。>途中の3行目に1行挿入後
なぜならこの状態で1行目~11行目が「ひとまとまり」になる条件が書かれていないからです。その条件が明示されない限りVBAでソートする範囲を決定できません。
ですから再度A1:B10、A11:B20が「ひとまとまり」であることを判断する条件を補足してください。(人が目で見てできるなら何らかの条件があるはずです)
代替案として最初にA1:B10、A11:B20にそれぞれ名前定義しておく方法があります。それであれば範囲の途中行に行挿入されてもソートが可能です。定義された名前が「grpA」だとするとソートするVBAは以下のようになります
Range("grpA").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal
でもこの方法は完全ではありません。それは11行目に挿入が行われた場合、その行はどちらの名前定義にも含まれないからです。従ってソートされません。
No.2
- 回答日時:
ソート時の範囲の記述を3つ書きます。
・カレントリージョン(「Shift+Ctrl+*」で選択される範囲)
Range("A1").CurrentRegion.Sort Key1:=Range("A1"), …以下省略
・A:B列
Columns("A:B").Sort Key1:=Range("A1"), …以下省略
・A1からB列の最終行までを範囲とする
Range(Range("A1"), Range("B65536").End(xlUp)).Sort Key1:=Range("A1"), …以下省略
この回答への補足
すみません。VBAを完全に理解しているわけでないので
どこでご指摘の構文を挟めばいいか解らないんです。
NO,1さんの補足にも書いたのですが
このようなソートを行うためにはどうしたらいいか
再度ご教授いただけないでしょうか?
よろしくお願いいたします。ペコリ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
許せない心理テスト
私は「あなたの目の前にケーキがあります。ろうそくは何本刺さっていますか」と言われ「12本」と答えたら…
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
並べ替えのマクロで対象行の範囲を行を増やした分だけ可変にして増やしたい。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルの漢数字の順番につい...
-
並べ替えについて
-
ハイフンの入ったデータの並べ替え
-
SELECT文のソート条件
-
エクセルVBAでデータ並べ替え
-
月末日のみソートしたい
-
レコードの登録順がおかしい
-
タイトル行を固定してソートしたい
-
SQLのORDERBY句について質問です。
-
上から何番目か。
-
Excelのオートフィルタでソート...
-
アクセスで曜日の並び順を変えたい
-
リストボックス内を昇順並べる方法
-
テーブルレーコードをソートし...
-
1の行を固定した上でVBAを用い...
-
コンボボックスのソートについて
-
大きいデータ数のテーブルに対...
-
数字と漢字が混じった日付デー...
-
ファイルメーカーでソート後の...
-
SQLローダーCSV取込で、囲み文...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイルの漢数字の順番につい...
-
並べ替えについて
-
レコードの登録順がおかしい
-
1の行を固定した上でVBAを用い...
-
テーブルレーコードをソートし...
-
リストボックス内を昇順並べる方法
-
エクセル、並び替え正しくソー...
-
コンボボックスのソートについて
-
月末日のみソートしたい
-
ハイフンの入ったデータの並べ替え
-
accessでDISTINCT 句と矛盾
-
アクセスに関して。クエリの並...
-
都道府県順、北からソートした...
-
SQLで曜日のソートを月火水木金...
-
数字と漢字が混じった日付デー...
-
Excelのオートフィルタでソート...
-
Selectした時のレコードの取得順
-
ファイルメーカーでソート後の...
-
excel:一番上の行がソートでき...
-
OracleとAccessの出力順の違い
おすすめ情報