次のコードは、オートフィルターをかけた後、テーブルのデータ行全体を削除するマクロである。空欄に入る適切な語句を解答しなさい。
Sub Exam1()
With Range("A1").ListObject.DataBodyRange
.AutoFilter 2, ”800”
.【 ② 】.Delete
End With
Range("A1").AutoFilter
End Sub
正解
【 ① 】entirerow
解説
オートフィルターで絞り込み、見出し行を除くテーブルの部位をDataBodyRangeで指定します。その後行全体をEntireRowで指定して削除すると、絞り込んだ結果だけが削除されます。
[コード解説]
Sub Exam1()
With Range("A1").ListObject.DataBodyRange
' テーブルのデータ行(DataBodyRange)を操作対象として指定します。
.AutoFilter 2, "800"
' 2列目にフィルターを適用し、"800"の値を持つ行を絞り込みます。
.EntireRow.Delete
' フィルターで表示された行全体を削除します。
End With
Range("A1").AutoFilter
' オートフィルターを解除します。
End Sub
スポンサーリンク
スポンサーリンク