Excel VBA 输出特定的单元格值



我似乎无法在 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 值

最新更新