Vba 如何搜索值,如果找到,请在单元格右侧的特定文本中输入,然后循环到末尾

Vba 如何搜索值,如果找到,请在单元格右侧的特定文本中输入,然后循环到末尾,vba,excel,search,foreach,Vba,Excel,Search,Foreach,我想检查整列中的某个值,第一个是Murphy,Yvonne,如果找到了该值,那么在找到该值的旁边的单元格中放入团队名称,继续浏览整个列表。在未找到搜索值的地方留下空格 最后,我想做一些这样的陈述,用团队名称Team1、2、3等填充整个专栏 我一直在四处搜索和玩代码提醒你,我只是偶尔涉猎VBA,我能够得到下面。它执行搜索并在单元格中输入团队名称,但不在找到匹配项的单元格旁边输入。它只是不断地为搜索词的每一个匹配项逐个添加团队名称 我是否需要将范围值存储在某个位置,然后告诉它在该位置插入团队名称 谢

我想检查整列中的某个值,第一个是Murphy,Yvonne,如果找到了该值,那么在找到该值的旁边的单元格中放入团队名称,继续浏览整个列表。在未找到搜索值的地方留下空格

最后,我想做一些这样的陈述,用团队名称Team1、2、3等填充整个专栏

我一直在四处搜索和玩代码提醒你,我只是偶尔涉猎VBA,我能够得到下面。它执行搜索并在单元格中输入团队名称,但不在找到匹配项的单元格旁边输入。它只是不断地为搜索词的每一个匹配项逐个添加团队名称

我是否需要将范围值存储在某个位置,然后告诉它在该位置插入团队名称

谢谢你的帮助

Sub Macro1()
Dim irow As Integer

irow = 2
For Each i In Range("i2:i500")  
    If i.value = "Murphy, Yvonne" Then  
        Cells(irow, 11) = "Team Name"  
        irow = irow + 1  
    End If  
Next i  

End Sub
我们需要更改irow以匹配所需的行:

Sub Macro1()
    Dim irow As Integer
    For Each i In Range("i2:i500")
        If i.Value = "Murphy, Yvonne" Then
            irow = i.Row
            Cells(irow, 11) = "Team Name"
        End If
    Next i
End Sub
编辑1

对于2个标准**

Sub Macro1()
Dim irow As Integer
irow = 2
For Each I In Range("i2:i500")
    If I.Value = "Murphy, Yvonne" And _
        I.Offset(0, -1).Value = "Good, Thomas" Then
            irow = I.Row
            Cells(irow, 10).Value = "Team Name"
    End If
Next I
End Sub

好的,如果我需要它检查不同列中的两个条件,但我仍然希望它将列表向下迭代到500,该怎么办?使用上面的例子:好的,我们检查Murphy、Yvonne和h2:h500的12:i500是否正确,Thomas然后输入团队名称我是否必须从上述语句开始,然后在“然后”部分中为每个语句输入另一个?再次感谢!这取决于这两个标准是否都需要为真,或者/orBoth是否需要为真。