| |
|
|
| | пытаюсь работать с почтой
в модулях лежит класс (clsMAPIEmail) для работы с почтой -(скачал)
при обработке процедуры...
Sub TestMAPIEmail()
Dim clMAPI As clsMAPIEmail
Set clMAPI = New clsMAPIEmail - (object variable or With block variable not set)
With clMAPI
.MAPILogon
.MAPIAddMessage
| может класс надо как-то зарегистрировать? | |
| |
| |
| |
|
|
| | clsMAPIEmail находится в той же базе, что и TestMAPIEmail?
Является ли clsMAPIEmail модулем класса? Или это просто стандартный модуль?
Добавить модуль класса вы можете в VBE, используя меню Insert - Class Module | |
| |
| |
| |
|
|
| | Вы создаете экземпляр класса, предварительно не объявив его
надо в самом начале модуля написать что-то типа:
Private mc1First As Class1 | |
| |
| |
| |
|
|
| | >Вы создаете экземпляр класса, предварительно не объявив его
>надо в самом начале модуля написать что-то типа:
>
>Private mc1First As Class1
Это совсем необязательно.
Если экземпляр класса нужен только в процедуре, то зачем определять его в разделе описаний модуля ?
Причина ошибки не в этом. | |
| |
| |
| |
|
|
| | >в модулях лежит класс
Наиболее простой вопрос может быть наиболее верным.
Он лежит в модулях как модуль?
Или он лежит в модулях как класс? | |
| |
| |
| |
|
|
| | Я тоже об этом спросил (на всякий случай :-)), но при этом должна быть ошибка компиляции "A module is not a valid type" и место ошибки было бы уже раньше - на строке
Dim clMAPI As clsMAPIEmail
Вполне вероятно, что ошибка возникает в процедуре инициализации самого модуля clsMAPIEmail. Где его можно посмотреть? | |
| |
| |
| |
|
|
| | он лежит в модулях как класс
с соответсвующей "иконкой", пиктограммой
вощем - класс. | |
| |
| |
| |
|
|
| | >вощем - класс.
я так и думал, сказал же, что спросил на всякий случай :-)
Приведите код процедуры Class_Initialize вашего класса . | |
| |
| |
| |
|
|
| | извиняюся, но он на домашнем компе...
а я в офисе на работе... | |
| |
| |
| |
|
|
| | >вощем - класс.
вощем нужно смотреть что за класс,
сообщение об ошибке может быть инициировано самим классом а не процедурой его вызова.
может вы не передаете какой-то обязательный параметр переменной класса, может еще что
закомментируйте все строки в классе или создайте пустой скласс с таким именем и безобидными вызовами в нем (типа мессидж боксов) и попробуйте запустить. | |
| |
| |
| |
|
|
| | Хорошо
Спасибо попробую  | |
| |
| |
| |
|
|
| | CDO.DLL не зарегистрирована оказываться...
Можа теперя попрёт...  | |
| |
| |