VBA:根据其他单元格的近似值更改单元格值

如果列G包含某些文本位,我正在努力处理一个我写过的VBA,其目的是改变列B中单元格的值。 这是我迄今为止写的:

Sub Test() Dim LastRow As Long Dim i As Long Sheets("Current Week").Select LastRow = Range("G" & Rows.Count).End(xlUp).Row For i = 2 To LastRow If Range("G" & i).Value Like "*Eagle*" Then Range("B" & i).Value = "Bird" End If Next i End Sub 

虽然上面的工作,我很挣扎的是,我想添加更多的“价值观”,而不仅仅是“鹰”。 我已经尝试了以下没有太多成功:

 Sub Test() Dim LastRow As Long Dim i As Long Sheets("Current Week").Select LastRow = Range("G" & Rows.Count).End(xlUp).Row For i = 2 To LastRow If Range("G" & i).Value Like "*Eagle*" Or ("G" & i).Value Like "*Pelican*" Then Range("B" & i).Value = "Bird" End If Next i End Sub 

我如何添加更多“值”?

谢谢!

我觉得你的困惑源于VB(A)为了可读性的目的而打算使用连续字符 ( _ )的要求。

 ' ... If _ Range("G" & i).Value Like "*Eagle*" Or _ Range("G" & i).Value Like "*Pelican*" Or _ Range("G" & i).Value Like "*Chicken*" Or _ Range("G" & i).Value Like "*Sparrow*" _ Then Range("G" & i).Value = "Bird" End If ' ...