Я работаю над проектом, который сортирует все ячейки на другом листе на основе критериев. Мне нужно активировать ячейку на другом листе, чтобы она работала. Я попытался найти решение, но не повезло. Я записал макрос из моей книги и немного изменил его, чтобы он соответствовал моей потребности. Когда я запускаю код, появляется Runtime Error 1004. мне нужен код, чтобы заменитьВыберите ActiveCell на другом листе
SetRange ActiveCell.Offset(-1, 0).Range("A1:AF30436")
Любое предложение будет оценено.
Вот код:
Sheets("Source").Select
ActiveWorkbook.Worksheets("Source").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Source").Sort.SortFields.Add Key:=ActiveCell.Range _
("A1:A30435"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Source").Sort
.SetRange ActiveCell.Offset(-1, 0).Range("A1:AF30436")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Ваш вопрос не ясно: вы хотите активировать Cell cA в Sheet sA и получить сортировку листа sB в соответствии со значением в cA? Возможно, вам стоит попробовать найти решение за 2 шага. Сначала попробуйте выполнить сортировку, передав значение в функцию. Затем привяжите это решение к событию на листе. – Roland
Я хочу активировать cA, поэтому я могу выбрать все ячейки (исключая заголовок) и отсортировать их по алфавиту. В книге есть 30 000 строк, которые нуждаются в сортировке. Я пробовал цикл, но он слишком медленный. Код выше находится на другом листе (MAIN). Когда я нажимаю кнопку на sB (MAIN), лист sA (Source) должен выбирать все листы на этом же листе и сортироваться. – Z9z9z9