スタンダード 模擬問題

Excel VBA スタンダード 模擬問題 ① 第32問 8章-5

次のコードは、オートフィルターをかけた後、テーブルのデータ行全体を削除するマクロである。空欄に入る適切な語句を解答しなさい。

Sub Exam1()

 With Range("A1").ListObject.DataBodyRange

  .AutoFilter 2,  ”800”

  .【 ② 】.Delete

 End With

  Range("A1").AutoFilter

End Sub

8章 テーブルの操作 模擬問題
正解

【 ① 】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