set wb = activeworkbook
В VBA есть два типа переменных (извините, это неправильная терминология, но она близка). Один указывает на часть данных (например, строку или число). Другой указывает на «объект», который является контейнером для всех видов вещей. У объекта есть значения, у объекта есть методы, которые вы можете вызвать.
Книга - это объект. Вы можете получить доступ к данным из рабочей книги («Возьми меня, лист1, рабочая тетрадь!») И вызвать методы для рабочей книги (workbook.add
).
С помощью простой переменной данных можно сказать filename = C:\exam.txt
Но объект должен быть SET
. Каждый раз, когда вы видите «Объект не установлен», это означает, что вы сделали что-то вроде wb = activeworkbook
вместо SET wb = activeworkbook
.
Другой сценарий - вы забыли установить переменную для объекта, как вы делали выше.