サーチ…


前書き

このトピックでは、VBAのテーブルの操作について説明し、Excelテーブルの知識を前提としています。 VBA、またはExcelオブジェクトモデルでは、テーブルはListObjectsとして知られています。 ListObjectの最も頻繁に使用されるプロパティは、ListRow(s)、ListColumn(s)、DataBodyRange、RangeおよびHeaderRowRangeです。

ListObjectのインスタンス化

Dim lo as ListObject
Dim MyRange as Range

Set lo = Sheet1.ListObjects(1)

'or

Set lo = Sheet1.ListObjects("Table1")

'or

Set lo = MyRange.ListObject

ListRows / ListColumnsの操作

Dim lo as ListObject
Dim lr as ListRow
Dim lc as ListColumn

Set lr = lo.ListRows.Add
Set lr = lo.ListRows(5)

For Each lr in lo.ListRows
    lr.Range.ClearContents
    lr.Range(1, lo.ListColumns("Some Column").Index).Value = 8
Next

Set lc = lo.ListColumns.Add
Set lc = lo.ListColumns(4)
Set lc = lo.ListColumns("Header 3")

For Each lc in lo.ListColumns
    lc.DataBodyRange.ClearContents   'DataBodyRange excludes the header row
    lc.Range(1,1).Value = "New Header Name"    'Range includes the header row
Next

Excelテーブルを通常の範囲に変換する

Dim lo as ListObject

Set lo = Sheet1.ListObjects("Table1")
lo.Unlist


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow