Я пытаюсь сохранить значения в листах как переменную, а затем перейти к ссылке на лист, используя эту переменную, а также использовать ее для фильтрации от.Как перемещаться по строкам, сохранять их как переменные и использовать их в качестве переменных VBA
Это будет зациклировано до тех пор, пока программа не достигнет первой пустой ячейки.
Соответствующий код у меня до сих пор:
Sub Program()
Dim i As Integer
i = 2
Do Until IsEmpty(Cells(i, 1))
Debug.Print i
Sheets("Button").Activate
Dim First As String
First = Cells(i, 1).Value
Debug.Print First
Dim Second As String
Second = Cells(i, 2).Value
Debug.Print Second
'Filters my Data sheet and copies the data
Sheets("DATA").Activate
Sheets("DATA").Range("A1").AutoFilter _
Field:=2, _
Criteria1:=First 'Filters for relevant organisation
Sheets("DATA").Range("A1").AutoFilter _
Field:=6, _
Criteria1:="=" 'Filters for No Response
Sheets("DATA").Range("A1:H6040").Copy
'This should loop through for each separate group
Sheets(CStr(Second)).Select
Range("A1").Select
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
i = i + 1
Loop
Worksheets("DATA").AutoFilterMode = False
End Sub
Я изменил программу значительно пытается добавить обозначения, такие как «CStr», как произошла ошибка в этой строке: Sheets(CStr(Second)).Select
, когда он используется для Sheets(Second)).Select
и debug.print's, чтобы увидеть, действительно ли он работает, но он не входит в непосредственное окно.
Кроме того, когда я на самом деле запускаю его, ошибки не возникает, но ничего не происходит.
Не знаете, что еще добавить, или что еще попробовать. Ура!
Спасибо @Vegard за помощь я получил ошибку «недопустимое использование собственности» на этой линии: dataTb1.AutoFilter _ Насколько я знаю, таблица не имеет имя. Это динамический список, который увеличивается с течением времени (поэтому я каждый раз переделываю материал AutoFilter). –
Это 'dataTbl', а не' dataTb1'. И он находит любую таблицу в 'A1'. Но пытаетесь ли вы сказать, что вы не используете таблицы? – Vegard
Я также должен добавить, что debug.Print еще ничего не показывает, (он работает в других подсистемах). Кроме того, «Таблицы» («ДАННЫЕ»). Диапазон («A1: H6040»). Копия »- номер 6040 просто используется, потому что он намного больше, чем я, вероятно, когда-либо понадобится. В этом смысле у вас есть предложение использовать что-то, что просто ссылается на соответствующую таблицу? Приветствия снова! –