我是VBA的新手。这是问题,我从“文本”框中获取一个值,并将其与excel工作表中的值进行匹配。即使两个值都相同,也显示为false。这是代码。
Private Sub CommandButton4_Click()
Dim retdata As Variant
Dim empid1 As Variant
retdata = TextBox1.Text
empid1 = Sheets("Sheet2").Cells(retdata + 1, 1)
If empid1 = retdata Then
Sheets("Sheet2").Rows(retdata + 1).Copy Destination:=Sheets("Sheet1").Range("A16")
Else
MsgBox ("Not Found")
End If
End Sub
答案 0 :(得分:1)
可以尝试以下几项:
首先,请确保您要比较字符串和字符串。变体可以容纳很多东西。将if语句更改为此
If CStr(empid1) = CStr(retdata) Then
如果这样做没有帮助,则在if语句之前添加这些行
Debug.Print "*" & retdata & "*"
Debug.Print "*" & empid1 & "*"
使用Ctrl + G调出调试窗口并检查输出。