Использование VBA для сортировки именованного диапазона Excel с использованием DIM для ссылки на именованный диапазон, и я получаю ошибку - PullRequest
0 голосов
/ 03 марта 2020

Я использую VBA для сортировки именованного диапазона Excel, используя DIM для ссылки на именованный диапазон, и получаю ошибку

'Начните с присвоения именованного диапазона переменной:

Dim Sales_Data_Range As String 
Sales_Data_Range = "Rpt_AM_04_Sales_ShipTo"

'Это работает (обратите внимание, что Sales_Data_Range работает в ListObjects ():

ActiveWorkbook.Worksheets(WSA_tab_name).ListObjects(Sales_Data_Range).Sort. _
SortFields.Add2 Key:=Range("Rpt_AM_04_Sales_ShipTo[[#All],[_RowNum]]"), SortOn:= _
xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

' Но когда я заменяю - Rpt_AM_04_Sales_Ship - на - Sales_Data_Range - в приведенном ниже коде, я получаю сообщение об ошибке

ActiveWorkbook.Worksheets(WSA_tab_name).ListObjects(Sales_Data_Range).Sort. _
    SortFields.Add2 Key:=Range(Sales_Data_Range[[#All],[_RowNum]]), SortOn:= _
    xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

Я пытался использовать скобки и кавычки, но не могу заставить их работать. Буду признателен за любые предложения.

Этот код от Брайана Стаффорда исправил проблему. Измените: Ключ: = Диапазон (Sales_Data_Range [[# All], [_ RowNum]])

'Используйте это вместо

Key:=Range(Sales_Data_Range & "[[#All],[_RowNum]]") 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...