我一直遇到类型不匹配错误,并尝试更改类型几次 . 我只是试图遍历每个工作表和指定的范围,以查看该范围的每个单元格中是否存在该单词 .
Sub CheckWord()
Dim arrVar As Variant
Dim ws As Worksheet
Dim strCheck As Range
Set arrVar = ActiveWorkbook.Worksheets
'MsgBox (arrVar)
For Each ws In arrVar
If ws.Range("C9:G20").Value = "Word" Then
MsgBox (True)
End If
Next ws
End Sub
3 回答
当您有一个包含许多列的
range
时,它会创建一个数组 . 将阵列考虑在内如下:你无法获得
value
的ws.Range("C9:G20")
并将其与一个字符串进行比较 . 您已选择多个单元格 . 如果你想在这些单元格中的一个包含"Word"时返回True
,或者当所有单元格都包含"Word"时,你需要迭代它们 .这是一个如何返回您的范围是否至少包含一次“Word”的示例