• ベストアンサー

[VBA] オートフィルターの特定の列だけをコピー

こちらの識者の方々にはいつもお世話になっています。 VBAの質問です。 環境は下記になります。 OS=windows7 pro 64bit Office=Excel2010(14.0.7128.5000) ・やりたいこと オートフィルタを設定したデータをコピーしたいのですが、CurrentRegionではなく、特定の列の可視セルのみコピーしたい場合はどのようにすればいいでしょうか? 質問に不備不足等ございましたらご指摘ください。 ご面倒お掛けしますがよろしくお願いします。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 例えばSheet1のA2セルに項目名が入力されていて、「Sheet1のA2セル~『Sheet1のA3以下でデータが入っている最も下のセル』」のセル範囲内で、オートフィルターを使用した後の可視セルのみをコピーして、Sheet2のA1セルに貼り付ける場合には、以下の様なVBAの構文となります。 Sheets("Sheet1").Range(Sheets("Sheet1").Range("A2"), Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).Copy Sheets("Sheet2").Range("A1") 或は With Sheets("Sheet1") .Range(.Range("A2"), .Range("A" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).Copy Sheets("Sheet2").Range("A1") End With

rihitomo
質問者

お礼

できました!ありがとうございます。

関連するQ&A