次のコードは、1列目が"東京"であるデータを、タイトル行もふくめ全てSheet2のセルA1へコピーするマクロである。空欄に入る適切な語句を解答しなさい。
Sub Macro1()
With Range("A1").【 ① 】.Range
.AutoFilter 1, "東京"
.Copy Sheets("Sheet2").Range("A1")
.AutoFilter 1
End With
End Sub
正解
【 ① 】listobject
解説
テーブルを特定する時は以下①~③のように表すことができます。
①テーブルのセルからテーブルを特定する
構文:テーブル内のいずれかのセル.ListObject
ListObjectの次のRangeは単一のセルのことではなくテーブル全体のことを指します。
本問題ではRange("A1")を指定していますので①です。
また.Rangeは一つのセルでなくテーブル全体を表しています。
⓶テーブルをRangeとテーブルの固有の名前で特定する
構文:Range(”テーブルの固有の名前”)
*テーブルの固有の名前…左上のボックスに表示されるテーブルの名前で「テーブル1」などや自動や任意にテーブルにつけられた名前のことです。
③テーブルが存在するシートからもインデックス番号やテーブル名でテーブルを特定する。この場合は・ListObjectsとコレクションになります。
・対象のシート. ListObjects (インデックス番号)
例)Sheet(”集計表”).ListObjects (1)
・対象のシート. ListObjects (テーブル名)
例)Sheet(”集計表”).ListObjects (”テーブル1”)
スポンサーリンク
スポンサーリンク