0
如何在不按名稱調用表的情況下引用表中的特定列?我想替換===>範圍(「Table1 [CODER]」)< ===與引用.Listobject索引號或使用我定義的變量「tableName」,但我無法弄清楚語法爲任一選項。使用表索引對excel表中的列進行排序vba
Public Sub CreateTableAndSortYNG()
Dim tableName As String
With ActiveWorkbook.ActiveSheet
.ListObjects.Add(xlSrcRange, .UsedRange, , xlYes).Name = .Name & "_Table"
tableName = ActiveWorkbook.ActiveSheet.ListObjects(1).DisplayName
MsgBox tableName
.ListObjects(1).Sort.SortFields.Clear
.ListObjects(1).Sort.SortFields.Add Key:=Range("Table1[CODER]"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.ListObjects(1).Sort.SortFields.Add Key:=Range("Table1[TYPE]"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.ListObjects(1).Sort.SortFields.Add Key:=Range("Table1[DSCHG_DT]"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
End With
End Sub
是'CODER'將是什麼'TableName'是什麼?您可以執行'.ListObjects(1).Sort.SortFields.Add Key:= Range(「Table1 [」&tableName&「]」),...' – BruceWayne
CODER是表格中列的名稱。我嘗試用索引號或變量「tableName」替換代碼的「Table1」部分,因爲表永遠不會被稱爲「Table1」 –
啊,那我相信你可以做'.ListObjects(1) .Sort.SortFields.Add Key:= Range(tableName&「[CODER]」),_ ...' – BruceWayne