• ベストアンサー

EXCEL VBAでオートフィルタ後の最終行を取得したい

いつもお世話になります。 WIN98-EXCEL2000での作業です。 VBAでオートフィルタをかけるところまでは出来たのですが、A列:Q列までの表のうち、A2~K列の最終行までをコピーしたい場合のコマンドを教えてください。 また、オートフィルタで検索されなかった場合はコピーはしない場合、どうしたらよいのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • sakenomo
  • ベストアンサー率52% (35/67)
回答No.1

ご参考にどうぞ。 このマクロでは、データ範囲のすぐ下の行も一緒にコピーされてしまいますが、空白のはずなので問題ないと思います。検索されなかった場合は、上記の空白セルの行がコピーされてしまうわけですが、これも空白なので使用上の問題はないかと思います。 Sub test2() Sheets("Normal").Select Range("A2").AutoFilter Field:=1, Criteria1:=Sheets("読込").Range("B2"), _ Operator:=xlAnd, Criteria2:=Sheets("読込").Range("C2") Sheets("Normal").AutoFilter.Range.Offset(1, 0).Copy Sheets("読込").Select Range("C3").Select ActiveSheet.Paste Sheets("Normal").Select Application.CutCopyMode = False ActiveSheet.ShowAllData Selection.AutoFilter End Sub

nanami0310
質問者

お礼

ありがとうございます。 他の質問の方も見てくださったんですね。とても嬉しいです。 思い通りに動いてくれました。本当にありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A