我正在尝试完成范围与其左侧单元格之间的字符串比较。所以它通过一个范围,查看一个单元格,将值向右移动并比较它们。最终目标是使用匹配的所有值填充数组。
我遇到的问题是当我使用debug.print时,字符串似乎匹配。但是我正在使用的StrComp评估是评估为false。
Sub FilterProdType()
'Get the product filter chosen and set to a variable
Dim bArray As Variant
Dim search, cell As Range
Dim prod, item As String
Set search = Sheet2.Range("B2:B41")
For Each cell In search
prod = Sheet1.Range("PRODTYPE").Value
item = cell.Offset(0, 1).Value
Debug.Print ("Value in range 'B2:B41':" & prod)
Debug.Print ("Value in cell directly left one column:" & item)
MsgBox StrComp(item, prod) = 0
Next cell
End Sub
提前致谢!
答案 0 :(得分:0)
在我看来,您将item
与String
与prod
作为Variant
进行比较,因为您在变量声明中造成了混淆。
你会添加
吗?Option Explicit
在顶部,您是否会看到您的代码需要
Dim search As Range, cell As Range
Dim prod As String, item As String
...这是Excel-VBA,而不是VB。
希望它有所帮助。