Excel 2003 VBA中的简单变量赋值

时间:2010-03-14 02:37:50

标签: excel-vba vba excel

我是Excel中的VBA新手。我正在设置一个简单的宏

Option Explicit

Sub Macro1()
   Dim sheet
   sheet = Worksheets.Item(1)  ' This line has the error
End Sub

在出错的行上,我得到“运行时错误'438'对象不支持此属性或方法”

我可以使用Watch窗口看到“Worksheets.Item(1)”是一个有效的对象。我已经尝试将其更改为“Dim sheet As Worksheet”但结果相同。

好的,我错过了什么?为什么会出现这种错误?

谢谢!

-Mike

1 个答案:

答案 0 :(得分:3)

您需要Set语句(因为您正在分配引用):

Option Explicit

Sub Macro1()
   Dim sheet As Worksheet
   Set sheet = Worksheets.Item(1) 

   '' ... Use sheet

   Set sheet = Nothing
End Sub