我似乎无法在 excel VBA 中得到如此简单的东西
我有单元格 A1 的数据
Sub TestBox()
ActiveSheet.Activate
MsgBox (Cells(0, 0).Value)
End Sub
我想基本上使用msgBox输出所述数据
运行时错误:"1004"应用程序定义或对象定义的错误
一个更可靠的答案是使用这样的东西:
Sub TestBox()
Dim sVal as String
sVal = ThisWorkbook.Worksheets("Sheet1").Cells(1,1).Value
'sVal = ActiveSheet.Cells(1,1).Value
'above can be used as well, but its not 100% reliable.
Msgbox sVal
End Sub
请注意我如何显式声明我的对象并避免激活。
当引用整个工作表时,单元格的索引为 1 作为初始值(与ActiveCell.Offset
相反,这些单元格的索引为 0(
A1= Cells(1,1)
所以它的
Sub TestBox()
ActiveSheet.Activate
MsgBox (Cells(1, 1).Value)
End Sub
输出当前工作表的 A1 值