我是 Excel VBA 的新手。我需要修改我的代码,以便我能够进一步进行。
我想在一个 excel 表中选择多个表列。这是我的代码:
Dim ws As Worksheet
Dim tbl As ListObject
Set ws = Sheets("Sheet1")
Set tbl = ws.ListObjects(1)
Range("tbl[[Column1]:[Column5]]").Select
Run Code Online (Sandbox Code Playgroud)
当我输入表名时,它起作用了。但我想使用我在代码中使用的变量来选择表列。
小智 5
您可以使用串联将变量用作表名。
这是代码:
Dim ws As Worksheet
Dim tbl As ListObject
Set ws = Sheets("Sheet1")
Set tbl = ws.ListObjects(1)
Range(tbl & "[[Column1]:[Column5]]").Select
Run Code Online (Sandbox Code Playgroud)
欢迎来到 Stackoverflow!
有很多方法可以做到这一点:
你可以使用:
Range("A:E").Select ' example selects columns from A to E
Run Code Online (Sandbox Code Playgroud)
否则,您也可以使用数组示例来实现:
Sub test()
Dim x, y As Range, z As Integer
x = Array(1, 5)
Set y = Columns(x(0))
For z = 1 To UBound(x)
Set y = Union(y, Columns(x(z)))
Next z
y.Select
End Sub
Run Code Online (Sandbox Code Playgroud)
但这取决于你的需要
此致
丹尼尔