2016-10-21 2 views
-1

У меня есть таблица, которую мне нужно автофильтировать в соответствии с критериями в столбце «AS», а затем скопировать количество отдельных дискретных столбцов в результате непустых ячеек в конкретные ячейки на следующем листе.Копирование нескольких нечетных ячеек фильтрованных столбцов на второй лист

Каков наиболее эффективный способ сделать это? Я знаю, что мне, возможно, придется копировать/вставлять специальные значения вместо прямой ссылки

ответ

0

Я не совсем уверен, что вы просите. Но, представьте, что колонка А заполнена именами фруктов, а колонка B заполнена цифрами. Следующие коды кода Колонка А с критерием «Яблоки» и копирует соответствующие номера на новый рабочий лист. Это может привести вас к правильному пути.

Sub selectApples() 

' Find last row in column A 
Dim LastRow As Integer 
LastRow = Cells(Rows.Count, 1).End(xlUp).Row 

' Select data in column A and filter 
Range("A1:A" & LastRow).Select 
Selection.AutoFilter Field:=1, Criteria1:="Apples" 

'Find new last row 
Dim newLastRow As Integer 
newLastRow = Cells(Rows.Count, 1).End(xlUp).Row 

'Copy and paste special into new worksheet 
Range("B2:B" & newLastRow).Select 
Selection.Copy 
Sheets.Add After:=ActiveSheet 
Selection.PasteSpecial Paste:=xlPasteValues 

End Sub 
+0

Есть ли способ ссылаться на более чем 2 ячейки в Range()? – supern00bcs

+0

на самом деле, для уточнения, Range («H2: H» и newLastRow, «I2: I» и newLastRow, «V2: W» и newLastRow, «AD2: AD» и newLastRow). Выбирает ошибку «диапазон объекта object_global не удался " – supern00bcs

Смежные вопросы