Есть столбец данных.
Есть таблица значений.
Нужно отфильтровать эту таблицу поочередно по каждому значению
из столбца данных.
Полученные данные скопировать на отдельный лист.
Что-то попыталась сделать сама, но...
Ошибка в самом начале :
FindSh.Name = FindSheetName
- Код: Выделить всё
Sub QFind()
Const OutSheetName As String = "Для сверки"
Const FindSheetName As String = "1С"
Const ControlSheetName As String = "1"
Dim outSh, ControlSh, tmpSh As Excel.Worksheet
Dim FindSh As Excel.Worksheet
Dim tmpCell, range1 As Excel.Range
Dim tmpLng As Long
On Error Resume Next
Application.DisplayAlerts = False
Worksheets(OutSheetName).Delete
Application.DisplayAlerts = True
On Error GoTo 0
Set outSh = Worksheets.Add
outSh.Name = OutSheetName
FindSh.Name = FindSheetName
ControlSh.Name = ControlSheetName
Set range1 = ControlSh.Range("A2:A41") 'диапазон, с которым сравниваем
tmpLng = 1
FindSh.Select
For Each tmpCell In range1
Columns("C:C").Select
Selection.AutoFilter Field:=3, Criteria1:=tmpCell
Selection.CurrentRegion.Select
Selection.SpecialCells(xlCellTypeVisible).Select
tmpCell.EntireRow.Copy outSh.Cells(tmpLng, 1)
outSh.Cells(tmpLng, 1).Insert xlShiftToRight
outSh.Cells(tmpLng, 1).Value = tmpSh.Name
tmpLng = tmpLng + 1
Next
End Sub