【VBA】シート上の表をテーブル化する

例えばシート上の以下の表を、


テーブル化することで、
 ・スタイルの設定
 ・テーブル化した範囲の名前定義
ができます!

スタイルの設定
テーブル化した範囲を「productテーブル」と名前定義
PR

VBAコード

ここでは例として、
 ・シート「data」上のセル「B2」から始まる表を
 ・テーブル化して
 ・テーブル化した範囲を「productテーブル」と名前定義
します。

実行前
Sub sample()
    
    With Worksheets("data")
        '対象シートをアクティブにする
        .Activate
        'テーブル化したい範囲の一番左上を選択状態にする
        .Range("B2").Select
        'テーブル化する(名前定義も含む)
        .ListObjects.Add.Name = "productテーブル"
    End With
    
End Sub

対象のシートを「アクティブ(=Activate)」にします。
※上記ではシート「data」を「アクティブ」にしています。
※「アクティブ」にせずに「選択状態」にするとエラーになります。

テーブル化したい範囲の一番左上を「選択状態(=Select)」にします。
上記ではセル「B2」を「選択状態」にしています。
※表全体を選択する必要はありません。

「XXX.ListObjects.Add.Name」により、1行で
 ・テーブル化
 ・名前定義
を実行しています。

「XXX.ListObjects.Add」により「ListObjectオブジェクト」が取得されます。

取得した「ListObjectオブジェクト」の「Name」に、定義したい名前を設定しています。
※上記では「productテーブル」と名前定義しています。

PR

実行結果

シート上の表のテーブル化ができました。

実行後
PR

参考

上記で使用した以下の詳細については、公式サイトをご確認ください。

●「XXX.ListObjects.Add」


●「ListObjectオブジェクト」

タイトルとURLをコピーしました