Простое назначение переменных в Excel 2003 VBA - PullRequest
2 голосов
/ 14 марта 2010

Я новичок в VBA в Excel. Я настраиваю простой макрос

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 Ответ

3 голосов
/ 14 марта 2010

Вам необходим оператор Set (поскольку вы присваиваете ссылку):

Option Explicit

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

   '' ... Use sheet

   Set sheet = Nothing
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...