ListObject object

ListObject.ListRows property

VBA는 취미로 2024. 3. 3. 19:14

ListObject.ListRows 속성

ListObject 개체에 있는 데이터 행을 모두 나타내는 ListRows 개체를 반환하며 읽기 전용입니다.

Syntax
expression.ListRows

expression : ListObject 개체를 나타내는 변수입니다.

비고

반환된 ListRows 개체에는 머리글, 합계 또는 삽입 행이 없습니다.

다음은 ListRows 속성을 호출하여 만든 ListRows 컬렉션의 숫자로 지정한 행을 삭제하는 예제입니다.

Sub TestDeleteListRow()

    Dim rowToDelete As Integer
    rowToDelete = 3

    DeleteListRow rowToDelete
End Sub

Sub DeleteListRow(iRowNumber As Integer)
    Dim wrksht As Worksheet
    Dim objListObj As ListObject
    Dim objListRows As ListRows


    Set wrksht = ActiveWorkbook.Worksheets("Sheet1")

    Set objListObj = wrksht.ListObjects(1)

    Set objListRows = objListObj.ListRows

    If (iRowNumber <> 0) And (iRowNumber <= objListRows.Count) Then
        objListRows(iRowNumber).Delete
    Else
        MsgBox "유효하지 않은 행 번호입니다."
    End If
End Sub

다음 코드는 테이블에 새 행을 추가합니다.

Sub AddNewRow()
    Dim lo As ListObject
    Set lo = ThisWorkbook.Sheets("Sheet1").ListObjects("Table1")
    
    lo.ListRows.Add
    
    Set lo = Nothing
End Sub

다음 코드는 "Sheet1"에 있는 테이블("Table1")의 첫 번째 행의 첫 번째 셀의 값을 메시지 박스로 출력합니다.

Sub ReferRow()
    Dim lo As ListObject
    Set lo = ThisWorkbook.Sheets("Sheet1").ListObjects("Table1")
    
    MsgBox lo.ListRows(1).Range.Cells(1, 1).Value
    
    Set lo = Nothing
End Sub

다음 코드는 "Sheet1"에 있는 테이블("Table1")의 행 수를 메시지 박스로 표시합니다.

Sub CountRows()
    Dim lo As ListObject
    Set lo = ThisWorkbook.Sheets("Sheet1").ListObjects("Table1")
    
    MsgBox lo.ListRows.Count
    
    Set lo = Nothing
End Sub

도움말 출처

ListObject.ListRows property (Excel)

Office VBA reference topic

learn.microsoft.com