私はごく最近、VBAで書き始め、何年にもわたって他のさまざまな言語で書き始めました。私は現在、Excel VBAでフィルターを使用する際にいくつかの奇妙な問題を抱えており、私が経験している動作に誰かが光を当てることができるかどうか疑問に思いました。
一度に1つずつ、いくつかの異なる列でデータセットでフィルタリングしたいと思います。これを行うには、データセットを新しいシートにコピーし、そこでデータを並べ替えます。私が使用している最初のフィルターには:
Sheets("Temp Data").Range("A:T").ClearContents
Sheets("Main Sheet").Range("A1", "T" & CountLV_Rows).Copy Sheets("Temp Data").Range("A1", "T" & CountLV_Rows)
Sheets("Temp Data").Range("A1", "T" & CountLV_Rows).Sort Key1:=Range("R1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
これは正常に機能します。ここで、Col C INSTEADの値でフィルタリングしたいので、上記のコードを繰り返します(clearcontents
成功の可能性を高めると思ったコマンドを含めて、Key1
値を次のように交換します。C1
2番目(うまくいけば新しいフィルター)には、次のものを使用しました:
`Sheets("Temp Data").Range("A:T").ClearContents
Sheets("Main Sheet").Range("A1", "T" & CountLV_Rows).Copy Sheets("Temp Data").Range("A1", "T" & CountLV_Rows)
'Sort the data so ascending site numbers in column C
Sheets("Temp Data").Range("A1", "T" & CountLV_Rows).Sort Key1:=Range("C1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal`
ただし、私のデータは、最初に列Rで並べ替えられた後、列Cで並べ替えられます。
以前に適用された種類をワイプするにはどうすればよいですか?
ご協力いただきありがとうございます