powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сохранение следов письма в Outlook'e после его авт.отправки
6 сообщений из 6, страница 1 из 1
Сохранение следов письма в Outlook'e после его авт.отправки
    #35995563
DrLisp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Пытаюсь решить задачу такого плана:
1. автоматическая отправка писем
2. после отправки письмо должно сохраняться в "Отправленных" Outlook'a

В целом на форуме нашел два варианта автоматического создания письма

1. В первом случае Outlook даже не задает вопроса на отправку ( что есть очень хорошо), но какого-то упоминания что письмо было, даже нет :( а надо

Dim oConfig
Dim oMSG
Dim CFields
Dim strBody


'создаем объект Message это наше письмо
Set oMSG = CreateObject("CDO.Message")

'создаем объект Configuration это настройки соединения
Set oConfig = CreateObject("CDO.Configuration")
Set CFields = oConfig.Fields
Set oMSG.Configuration = oConfig
CFields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
CFields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail" 'адрес SMTP сервера
CFields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
CFields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "test@test.ru" 'Login
CFields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "pas" 'пароль
CFields("urn:schemas:mailheader:content-language") = "windows-1251"
CFields.Update

oMSG.To = "test2@test.ru" 'адрес получателя1
oMSG.CC = "" 'адрес получателя2
oMSG.From = "test@test.ru" 'адрес отправителя
oMSG.Subject = "test" ' тема письма
oMSG.BodyPart.Charset = "windows-1251" ' кодировка письма
'oMSG.AddAttachment "c:\privet.txt" 'путь к вложенному файлу

'формируем HTML текст который будет телом письма
strBody = "Здесь HTML текст. & <BR><BR> & C уважением, login@mail.ru"

oMSG.HTMLBody = strBody 'тело письма
oMSG.Send 'отправляем

'обнуляем переменные
Set CFields = Nothing
Set oConfig = Nothing
Set oMSG = Nothing


2. Вариант создает письмо, и при попытке отправить его Outlook выдает запрос на отправку, что очень досадно (решения в виде программ автоматического нажатия ОК пока не хочу применять)
Но в этом варианте сохранить письмо в какую хочешь папку не представляет каких либо проблем.

Dim oMSG As MailItem
Dim oMSG_Conf
Dim strBody
Dim oInbox As MAPIFolder
Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myInbox As Outlook.MAPIFolder
Dim myOutFolder As Outlook.MAPIFolder

Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myInbox = myNameSpace.GetDefaultFolder(olFolderOutbox)

Set myOutFolder = myInbox '.Folders("куда надо")

'создаем объект Message это наше письмо
Set oMSG_Conf = CreateObject("CDO.Message")

'Set oMSG = CreateObject("CDO.Message")

Set myOlApp = CreateObject("Outlook.Application")
Set oMSG = myOlApp.CreateItem(olMailItem)

oMSG.To = "test2@test.ru" 'адрес получателя1
oMSG.CC = "" 'адрес получателя2

oMSG.Subject = "test" ' тема письма

'формируем HTML текст который будет телом письма
strBody = "Здесь HTML текст. & <BR><BR> & C уважением, login@mail.ru"

oMSG.HTMLBody = strBody 'тело письма
oMSG.Send 'отправляем
'oMSG.Move myOutFolder

'обнуляем переменные

Set oMSG = Nothing
Set oMSG_Conf = Nothing
Set myNameSpace = Nothing
Set myInbox = Nothing
Set myOlApp = Nothing
Set myOutFolder = Nothing

Возможно во втором варианте меня устроило бы не отправлять подготовленное сообщение, а сохранить например в "исходящих", а уже потом после подготовки всех писем в ручную нажимать "Отправить и Получить", но письма не уходят :( может кто знает есть где флаг указывающий, что это письмо уже подготовлено к отправке?
Ну и как в первом варианте сделать так чтобы отправленные письма были видны в Outlook'e ?
...
Рейтинг: 0 / 0
Сохранение следов письма в Outlook'e после его авт.отправки
    #35995737
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто не нужно тогда через CDO отправлять.
Пользуйтесь outlookом )
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Set myOlApp = CreateObject("Outlook.Application")
        Set myNameSpace = myOlApp.GetNamespace("MAPI")
        Set myFolder = myNameSpace.GetDefaultFolder(olFolderContacts)
        Set myItem = myOlApp.CreateItem( 0 )
        myItem.Recipients.Add CStr(Sheets("SPAMER").Cells(i,  3 ))
        If CStr(Sheets("SPAMER").Cells( 2 ,  2 )) <> "" Then myItem.Attachments.Add CStr(Sheets("SPAMER").Cells( 2 ,  2 ))
        myItem.Attachments.Add CStr(Sheets("SPAMER").Cells(i,  6 ))
        myItem.Subject = CStr(Sheets("SPAMER").Cells(i,  4 ))
        myItem.Body = CStr(Sheets("SPAMER").Cells(i,  5 ))

        myItem.Display
'        myItem.Send
У меня так работает.
...
Рейтинг: 0 / 0
Сохранение следов письма в Outlook'e после его авт.отправки
    #35995747
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Taranaga,
) а у Вас, я смотрю тоже уже так работает )
Мой предыдущий пост - удалить, автора (меня) - сжечь.
...
Рейтинг: 0 / 0
Сохранение следов письма в Outlook'e после его авт.отправки
    #35995752
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант - можно дублировать письмо себе (вставлять себя в качестве второго адресата) - следов будет сколько угодно...
...
Рейтинг: 0 / 0
Сохранение следов письма в Outlook'e после его авт.отправки
    #35998025
DrLisp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaranagaКак вариант - можно дублировать письмо себе (вставлять себя в качестве второго адресата) - следов будет сколько угодно...

Наверное так и придется делать. Спасибо
...
Рейтинг: 0 / 0
Сохранение следов письма в Outlook'e после его авт.отправки
    #35998139
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чтобы сразу не отправлялось по второму варианту - будет достаточно убрать строчку
oMSG.Send 'отправляем
И поставить строчку
oMSG.Display
чтобы на экран письмо вывести
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сохранение следов письма в Outlook'e после его авт.отправки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]