簡體   English   中英

excel vba 選擇表格范圍

[英]excel vba select range of a table

我想選擇一個表格,它將有固定的列(其中 4 個),但可以有任意數量的行,也可以有空行。 我將如何選擇表格范圍?

在此處輸入圖片說明

比如當前選擇的是B2 to E5

如何在 VBA 中以編程方式獲得它?

以下是設置對表的引用的方法。 您應該觀看: Excel VBA 介紹第 5 部分 - 選擇單元格(范圍、單元格、活動單元格、結束、偏移) 它將讓您更好地理解范圍、工作表和 Excel 對象模型。

Dim Target As Range
With Worksheets("SheetName")
    Set Target = .Range("B2:E2", .Range("B" & .Rows.Count).End(xlUp))
End With

假設你的表格總是從B2開始並且總是有 4 列的寬度,你可以使用這樣的東西來獲得所有 4 列的最后一行:

Function getlastrow() As Integer
    Dim i As Integer
    getlastrow = 0
    With Worksheets("YourWorksheet")
        For i = 0 To 3
            'starting with 2+i=2 (column B) and End with 2+i=5 (column E)
            If (.Cells(.Rows.Count, 2 + i).End(xlUp).Row) > getlastrow Then 
                getlastrow = .Cells(.Rows.Count, 2 + i).End(xlUp).Row
            End If
        Next i
    End With
End Function

有了這些信息,您可以設置您的范圍:

Sub SetRange()
    Dim myrange As Range
    With Worksheets("Tabelle1")
        Set myrange = .Range("B2:E" & getlastrow)
    End With
End Sub

嘗試,

Worksheets("Sheet3").Range("Table1[#All]").Select
'or,
Worksheets("Sheet3").ListObjects("Table1").Range.Select

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM