Proper syntax Match and If not isblankДля оператора цикла VBA Excel 2016
мне нужна помощь с созданием оператора цикла, который будет определять начало и конец диапазона, где встретил конкретный критерий.
Я нашел эти заявления в Интернете и нуждаюсь в помощи, чтобы изменить их для циклического преобразования через два разных листа, чтобы обновить значение на 1 из листов.
У этого есть проблема, возвращающая значение True или False для диапазона, когда я хочу передать фактический именованный диапазон для поиска там, где это поле = Y, а затем возвращает значение из другого столбца. Я оригинал пытался использовать Match и If не является пустой функцией. Но это очень ограничивает.
См. Предыдущее сообщение, чтобы узнать, чего я пытаюсь выполнить. Я знаю, что мне нужно будет расширить образцы кода и, вероятно, понадобится помощь в этой модификации.
Sub Test3()
Dim x As Integer
Dim nName As String
Sheets("BalanceSheet").Select
nName = Range("qryDifference[[Validate Adjustment]]").Select
Debug.Print nName
' Set numrows = number of rows of data.
NumRows = Range(nName, Range(nName).End(xlDown)).Rows.Count
' Select cell a1.
' Establish "For" loop to loop "numrows" number of times.
For x = 1 To NumRows
' Insert your code here.
MsgBox "Value found in cell " & ActiveCell.Address
' Selects cell down 1 row from active cell.
ActiveCell.Offset(1, 0).Select
Next
End Sub
Это то, что я до сих пор - это дает мне и вопрос с ActiveCell.Offset (4, 0) .Select nAgentNo = Range ("qryDifference [[agtno]] ") .Value nValidate = Range (" ryDifference [[Difference]] "). Значение Debug.Print nAgentNo Debug.Print nValidate Ошибка несоответствия типа выше.
Sub Revised_AgentAmount()
Dim myRange As Range
Dim i As Long, j As Long
Dim nAgentNo As String
Dim nValidate As Long
Sheets("BalanceSheet").Select
Set myRange = Range("qryDifference[[Validate Adjustment]]")
For i = 1 To myRange.Rows.Count
For j = 1 To myRange.Columns.Count
If myRange(i, j).Value = "Y" Then
ActiveCell.Offset(4, 0).Select
nAgentNo = Range("qryDifference[[agtno]]").Value
nValidate = Range("ryDifference[[Difference]]").Value
Debug.Print nAgentNo
Debug.Print nValidate
End If
Next j
Next i
End Sub
Пожалуйста, посмотрите мою последнюю редакцию на мое сообщение. –