2016-09-15 3 views
0

Мой код копирует текст из ячейки в матрице 1 ко всем ячейкам, которые соответствуют моим критериям в матрице 2. Но я хочу, чтобы он копировал его только в первую ячейку который отвечает моим критикам в Matrix 2, а затем останавливается.Выбор только первой ячейки в диапазоне, который соответствует условию

Private Sub CommandButton1_Click() 

Dim i As Integer 
Dim j As Integer 

For j = 2 To 2 
    For i = 21 To 21 

     If Cells(i, j).Value > 0 Then 
      Cells(i, j).Value = Cells(i, j).Value - 1 
      Cells(i, j).Offset(0, -1).Select 
     End If 

     'as it says - for EACH - so it copies in aLL the cells' 
     'I can't Change the range though, cause there will come a Loop eventually' 
     For Each cell In Range("a1:aap15") 

      If cell.Interior.ColorIndex = 6 Then 
       If cell.Value = "" Then 
        cell.Value = ActiveCell.Value 
       End If 
      End If 
     Next 
    Next 
Next 

End Sub 
+0

Почему у вас есть вторая петля? 'Для i = 21 до 21'? в чем цель? (или первая?) –

+0

Я уменьшу значение b21 до тех пор, пока оно не станет 0, затем я продолжу с b22 и так далее. Я просто еще не пришел к участию, поэтому я забыл это осложнение и облегчил его, пока не понял, какие у меня уже есть. – Julian

ответ

0

Вы можете использовать команду Exit For для выхода из цикла for. Похоже, вы хотите добавить его здесь:

If cell.Interior.ColorIndex = 6 Then 
    If cell.Value = "" Then 
     cell.Value = ActiveCell.Value 
     Exit For 
    End If 
End If 

Примечание: не проверено. Дайте мне знать, если у вас возникли проблемы

+0

Он отлично работает. Спасибо. – Julian

+0

Я просто понял, что Excel ищет в пределах диапазона слева направо, а затем сверху вниз. Могу ли я заставить его искать первый столбец сверху донизу, а второй и так далее? Должен ли я открыть для этого новый вопрос? – Julian

+0

Я бы посмотрел, есть ли вопрос уже существует и уже был дан ответ здесь, или если вы можете найти его в поиске Google. Если это не удастся, тогда стоит задать новый вопрос – CallumDA

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