我正在做一些测试,将单元格中的值与工作表的名称进行比较。
Cells(2,1)
中的值为5
,工作表的名称也为5
。
Sub test()
MsgBox (Cells(2, 1) & ActiveSheet.Name)
If Cells(2, 1).Value = ActiveSheet.Name Then
MsgBox ("They are the same")
End If
End Sub
我看到一个弹出框,上面显示55
,这意味着两个值是相同的,但是“ The are are same” 窗口从未出现。我想知道这里可能缺少什么?
答案 0 :(得分:1)
单元格值是一个数字,工作表名称是一个字符串。在与工作表名称进行比较之前,请使用CStr
将数字转换为字符串。
Sub test()
MsgBox (Cells(2, 1) & ActiveSheet.Name)
If CStr(Cells(2, 1).Value) = ActiveSheet.Name Then
MsgBox "They are the same"
End If
End Sub