Szukaj…


Wprowadzenie

Ten temat dotyczy pracy z tabelami w języku VBA i zakłada znajomość tabel programu Excel. W VBA, a raczej w Excel Object Model, tabele są znane jako ListObjects. Najczęściej używanymi właściwościami obiektu ListObject są ListRow (s), ListColumn (s), DataBodyRange, Range i HeaderRowRange.

Tworzenie wystąpienia obiektu 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

Praca z 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

Konwertowanie tabeli Excela na normalny zakres

Dim lo as ListObject

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


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow