У меня есть код ниже. То, что я пытаюсь достичь, - это макрос, который должен смотреть вниз по столбцу страны. Колонка F. Найдите страну, затем скопируйте и вставьте все данные для этой страны на новый лист. назовите вкладку этой страной и сделайте это снова для следующей страны в колонке FMacro Not Executing
Marco компилируется просто отлично, но ничего не происходит, любая помощь будет принята с благодарностью.
код ниже, и я также приложил ПИК
Option Explicit
Sub Filter()
Dim wsCL As Worksheet
Set wsCL = Worksheets("CountryList")
Dim rCL As Range, rCountry As Range
Set rCL = wsCL.Range("A1:A201")
Dim ws1 As Worksheet
Set ws1 = Worksheets("Sheet1")
Dim lRow As Long
lRow = ws1.Range("A" & ws1.Rows.Count).End(xlUp).Row
For Each rCountry In rCL
'check if country exists
Dim rTest As Range
Set rTest = ws1.Range("F1:F" & lRow).Find(rCountry.Value2, lookat:=xlWhole)
If Not rTest Is Nothing Then 'if country is found create sheet and copy data
Dim wsNew As Worksheet
Worksheets.Add (ThisWorkbook.Worksheets.Count)
Set wsNew = ActiveSheet
wsNew.Name = rCountry.Value2
ws1.Range("A1:Q1").Copy wsNew.Range("A1") 'place header row
With ws1.Range("A1:Q" & lRow)
.AutoFilter 10, rCountry.Value2
.Offset(1).SpecialCells(xlCellTypeVisible).Copy wsNew.Range("B1") 'copy data for country under header
.AutoFilter
End With
End If
Next
End Sub
Мне нравится реорганизованный код, но я получаю ошибку 1004 при компиляции. Что-то не так? Линия неисправна **. "AutoFilter 6, rCountry.Значение 2 "** '<- | данные фильтра по полю страны (6-я колонка) с текущим именем страны –
не понимает, что _CountryList_ является листом со всеми данными и _Sheet1_ является листом со списком« Страна »... см. Отредактированный код – user3598756
спасибо за помощь. Я пробовал отредактированный код, но теперь я получаю ошибку времени выполнения 1004. Ячейки не найдены в строке 'Set rCL = Worksheets (« Sheet1 »). Range (« A1: A201 »). SpecialCells (xlCellTypeConstants, xlTextValues) '<- | set country names range' –