[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『【VBA】ソートメソッドでなぜかデータが連続コピーされる』(まるこ)
VBA初心者です。現在28行目、O列まで入力されたデータをソートメソッドで並び替えるプログラムを以下のように作ったところ、何故か29行目以降、特定の行のデータ(A列がRGB166,166,166で塗りつぶされた行のうちの一つ)が
最終行までコピーされるという事態に陥っています。
ちなみにA列の塗りつぶしは条件付き書式で設定しています。
Sub 並び替え1()
With ActiveSheet.Sort
.SortFields.Clear
.SortFields.Add _ (Key:=Range("a3:a50"), _ SortOn:=xlSortOnCellColor, _ Order:=xlDescending) _ .SortOnValue.Color = RGB(166, 166, 166)
.SetRange Range("a2:o50") .Header = xlYes .Orientation = xlTopToBottom .Apply
End With
Range("3:50").EntireRow.AutoFit
End Sub
今までソートメソッドを何度か使いましたが、初めての事態に非常に困っております。
なんでこの挙動になるのか原因が分からず、気味が悪いです。
申し訳ありませんが、お知恵をお貸しください。よろしくお願いいたします。
< 使用 Excel:Excel2016、使用 OS:unknown >
>VBA初心者です。現在28行目、O列まで入力されたデータをソートメソッドで並び替える
なのに、なんで Key:=Range("a3:a50") とか .SetRange Range("a2:o50") とかになってるのかしらん?
(xlg) 2023/09/27(水) 08:17:53
ここに表示されていないコードに問題がないか、
問題の行が他の行と何か違わないか、
をご確認ください。
それ以上のことは言えないような気がしますが。
(ゆたか) 2023/09/27(水) 08:47:56
(マクロ苦手) 2023/09/27(水) 08:51:32
>ちなみにA列の塗りつぶしは条件付き書式で設定しています。
↑はどのような条件が設定されているのでしょうか?
(もこな2 ) 2023/09/27(水) 08:55:16
xlg様 手動での並び替えも行いましたが、色順にきちんと並び変わりませんでした。
あと、cells(rows.count,1).end(xlup).rowで最終行取得の形に書き換えたところ、きちんと動作しました。ありがとうございました。
ただ、元コードでも相談したような動作は本来起きないはずなので、ソートオブジェクトを使い続けることに不安を覚えています。
ゆたか様 やはりコードは問題ないですよね。それ以外の要因も検討がつかず気味が悪いです。
マクロ苦手様 ソートオブジェクト以外の機能をほぼ記載していないので、それをコメントアウトすると動作内容がほぼなくなってしまうのですが…理解できていなかったらすみません。
もこな2様 条件付き書式にて「A列に×が入力されている場合、セルを灰色(RGB166,166,166)にする」という式が設定されています。
(まるこ) 2023/09/28(木) 08:22:20
だったらソートオブジェクトとかいう以前の問題じゃないですか。
もうシートの全データを新規ブックに値コピーして条件付き書式も設定して、プロシージャもコピーして試してみるくらいしか思いつきませんね。
(xlg) 2023/09/28(木) 08:33:08
> ゆたか様 やはりコードは問題ないですよね。それ以外の要因も検討がつかず気味が悪いです。
もし原因を究明したいなら、新しいシートまたはブックでやってみてください。
おそらく、うまくいくんじゃないでしょうかね。
そして、だんだんとそのシートまたはブックを既存のものに近づけていって、
どうなるか、何が違うのかを発見することです。
今回のことに限りませんが、何かがおかしかったら、
おかしくないところを確認して(潰して)いくことかなと思います。
理由はいろいろと考えられます。
シートまたはブックの設定・状態、Excelのバージョン、OSのバージョン、PCの設定、他
いろいろと試してみないと、わからないですね。
(ゆたか) 2023/09/28(木) 08:45:01
↑は先頭の【>】が編集記号に扱いになっているので、適宜修正されるとよいとおもいますが、それはそれとして。
>A列に×が入力されている場合
ならば、A列にはどうやって"入力"していますか?
実は数式が入っていて、並び替えの結果参照セルがずれてしまい コピーされたように見えたとか、他のマクロ(イベント)が発動して 想定外の動作をしたとかを疑っています。
(もこな2 ) 2023/09/28(木) 08:45:51
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.