Vba:“如果单元格包含”的简单公式
您可以使用以下基本语法在 VBA 中使用“如果单元格包含”的公式:
Sub IfContains()
Dim i As Integer
For i = 2 To 8
If InStr(1, LCase(Range(" A " & i)), " turtle ") <> 0 Then
Result = " Contains Turtle "
Else
Result = “ Does Not Contain Turtle ”
End If
Range(" B " & i) = Result
Next i
End Sub
此特定示例检查范围A2:A8中的每个单元格是否包含“海龟”,然后将“包含海龟”或“不包含海龟”分配给范围B2:B8中的每个匹配单元格。
注意: Instr方法检查一个字符串是否包含另一个字符串, LCase方法将文本转换为小写以执行不区分大小写的搜索。
以下示例展示了如何在实践中使用此语法。
示例:如何在 VBA 中使用“如果单元格包含”
假设我们在 Excel 中有以下单元格列表,每个单元格包含不同的文本:
假设我们要检查范围A2:A8中的每个单元格是否包含文本“turtle”,并将结果显示在范围B2:B8中的相应单元格中。
我们可以创建以下宏来执行此操作:
Sub IfContains()
Dim i As Integer
For i = 2 To 8
If InStr(1, LCase(Range(" A " & i)), " turtle ") <> 0 Then
Result = " Contains Turtle "
Else
Result = “ Does Not Contain Turtle ”
End If
Range(" B " & i) = Result
Next i
End Sub
当我们运行这个宏时,我们会收到以下输出:
B 列告诉我们 A 列中的相应单元格是否在文本中的某处包含“turtle”。
注意:您可以在此处找到 VBA Instr方法的完整文档。
其他资源
以下教程说明如何在 VBA 中执行其他常见任务: