如何在VBA中引用表
我在工作表上放置一个button,以允许在表格中的两列中的所有项目大写。
以下是我在其他地方find的代码,并尝试进行工作:
Private Sub CommandButton1_Click() With Range("B10", Cells(Rows.Count, "B").End(xlUp)) .Value = Evaluate("INDEX(UPPER(" & .Address(External:=True) & "),)") End With With Range("C10", Cells(Rows.Count, "C").End(xlUp)) .Value = Evaluate("INDEX(UPPER(" & .Address(External:=True) & "),)") End With End Sub
我希望范围引用表2,列1和2,而不是B和C.
build议?
为了访问各种表格范围和引用,你需要使用一个ListObject
。 这是一个例子:
Option Explicit Sub test() Dim ws As Worksheet Dim t2 As ListObject Set ws = ActiveSheet Set t2 = ws.ListObjects("Table2") Debug.Print t2.ListColumns(1).Name Dim refRange As Range Set refRange = Union(t2.ListColumns(1).Range, t2.ListColumns(2).Range) Debug.Print refRange.Address End Sub