2014-10-09 1 views
0

Еще больше VBA Goodness, я пробовал писать цикл for с циклом for, чтобы пройти через текст ячеек, назначив ему переменную aa, а затем пробегите по диапазону если значение ячейки находится в пределах диапазона, а если найдено, то измените значение других ячеек на «да» или «нет», если не нашли, но я продолжаю получать все НЕТ, несмотря на то, что сам вижу значения внутри диапазона.Double For Loop для поиска, если значение ячейки находится в диапазоне

Все дело в том, чтобы избежать использования vlookup function = if (vlookup («значение», «таблица», «col», «false»), «да», «нет»), которые, кажется, пропускают некоторые значения, несмотря на то, что они присутствуют.

мой код

Dim xell As Range 

For Each xell In Range("C6:C36") 

lookFor = xell.Value 

For i = 6 To 36 

    If Cells(i, 10).Value = lookFor Then 
     Cells(i, 7).Value = "Yes" 
     Else 
     Cells(i, 7).Value = "No" 
    End If 
Next i 

Next xell 

Идея в том, петля в первом диапазоне получить текст ячейки присвоить его переменной и начать новый цикл в течение этого смотреть через диапазон, чтобы увидеть, если значение ячейки внутри этого диапазона.

Выполняется, но возвращается с помощью «Нет».

+0

перезаписи ваши ячейки каждый раз, так что получить результаты только для последнего xcell в Range («C6: C36») – CallumDA

+0

Что было бы поправкой? – Jimjebus

ответ

0

Оказывается, я был п вышел мой цикл при нахождении да :)

Выхода Для необходим

Dim xell As Range 

For Each xell In Range("C6:C36") 

lookFor = xell.Value 

For i = 6 To 36 

    If Cells(i, 10).Value = lookFor Then 
     Cells(i, 7).Value = "Yes" 
     Exit For <-------- was missing 
     Else 
     Cells(i, 7).Value = "No" 
    End If 
Next i 

Next xell 

Didnt решить мой текущий выпуск данных не найден, если не отредактировано

+0

ОК, теперь вы решили перезаписать «Нет». Но вы по-прежнему перезаписываете последний цикл (xell = C36). Результат этого последнего цикла перезаписывает результаты 29 предыдущих циклов ... Но это не проблема VBA, а проблема дизайна того, что вы хотите сделать ... – DataSmarter

+0

Результаты этого сработали для меня, чтобы обеспечить я сделал это рядом с vlookup, который дал те же результаты, что и постоянная ячейка, которая не будет найдена, если не будет отредактирована одна и та же – Jimjebus

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