Я, кажется, получаю ошибку 1004 около половины времени, когда я запускаю этот кусок кода, и я не совсем уверен, почему:Runtime Ошибка 1004 рода функции VBA
Dim ranged As Range
Set ranged = Range("AJ2")
Set ranged = Range(ranged, ranged.End(xlDown))
Sheets(i).Select
ActiveWorkbook.Worksheets(i).Sort.SortFields.Add Key:=ranged, _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets(i).Sort
.SetRange ranged
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Код бежится по серии рабочих листов и диапазону в столбце AJ различаются по размеру на каждом листе, и поэтому определение диапазона в начале необходимо. Цель состоит в том, чтобы отменить порядок диапазона. Может ли кто-нибудь помочь с тем, что здесь ошибка?
Спасибо за вашу помощь. Я скопировал этот код именно в мой, и он по-прежнему сталкивается с «Ошибка времени выполнения 1004: ссылка на сортировку недействительна. Убедитесь, что она находится в пределах данных, которые вы хотите отсортировать, и первое поле Sort By не является такой же или пустой. " Что действительно странно, так это то, что когда я запускаю его на одном листе, только изменяя его с помощью этой книги. Таблицы (i) с помощью этого рабочего стола. Таблицы («Имя листа») отлично работают, но когда я помещаю его в указанную выше структуру для запуска нескольких в соответствии с вашим кодом это не так. Есть идеи? – mm123