【vba】ソート実行時に「並べ替えの参照が正しくありません。」エラー発生

スポンサーリンク

エラー’1004「並べ替えの参照が正しくありません。」

vbaでエクセルシートのソートを実行するために、以下のコードを実装したところエラーが発生。

With Wb.WorkSheets("sort")   
   Range("A1").Sort Key1:=Range(“B2”), Order1:=xlDescending
End with

実行時エラー’1004

並べ替えの参照が正しくありません。参照が並べ替えるデータ内にあることと、[最優先されるキー]ボックスが空白でないことを確認してください。

最優先されるキーであるB列に空白のボックスがなかったので、エラーの原因を追求するのに時間がかかってしまった。

原因はシートの選択

原因は、今回ソートを実行しようとしている「sort」シートがアクティブになっていないことであった。

以下のように、コードを修正することでエラー解消!

With Wb.WorkSheets("sort")   
   .Activate
   Range("A1").Sort Key1:=Range(“B2”), Order1:=xlDescending
End with

気がつけば簡単なことなのに、これに気がつくまでに30分もかかってしまった…

単純なところから、見直す癖をつけていきたい。


コメント

タイトルとURLをコピーしました