Страницы: 1
RSS
Отправка почты без использования почтовых программ
 
Здравствуйте уважаемые эксперты. Нашел процедуру, позволяющую отправлять письмо посредством VBA без использования Outlook. http://www.excelvba.ru/code/CDO Смущает подпрограмма для внесения изменений в реестр. Можно ли использовать эту функцию не трогая реестр, а каждый раз определяя сервер исходящих, мейл и пароль. Если например программа кочует по разным компьютерам? Спасибо за советы.
 
Здравствуйте ДМ. Как всегда снимаю шляпу. (Маленькое уточнение. В данном случае не требуется настроек шифрования, проверок и прочего того, что требуется при настройке клиента?)
 
скачал пример, вписал свою почту - не отправляет - пустой msgbox выскакивает.  
что я делаю не так?  
smtp - freemail.ukr.net
 
Причин множество, например:  
включенный брандмауэр Windows или другой файрволл  
неподходящая версия ОС (этот код работает не на всех версия Windows)  
ошибка в коде  
и т.д. и т.п.  
 
 
PS: Тот же самый код - но в обёртке функции - можно найти здесь:  
http://excelvba.ru/code/CDO
 
Привет, Дима)  
Сначала отправил своё сообщение - потом внимательно прочитал вопрос автора темы.  
Как всегда, спешу))) И кнопки "правка", как назло, нет )  
 
 
PS: Может быть ещё одна причина неработоспособности кода - прокси-сервер.
 
{quote}{login=}{date=23.11.2010 07:19}{thema=Re: }{post}В данном случае не требуется настроек шифрования, проверок и прочего того, что требуется при настройке клиента?{/post}{/quote}  
Да Дмитрий, что-то не так, все время пишет "нет доступа в интернет".  
smtp.gmail.com  
Сдается мне, что вот в этих настройках для гмейла собака порылась  
             .Item(CDO_Cnf & "sendusing") = 2  
             .Item(CDO_Cnf & "smtpauthenticate") = 1
 
{quote}{login=The_Prist}{date=23.11.2010 10:45}{thema=}{post}А у меня почему-то с трех разных почтовых ящиков отправляет нормально...Среди них: рамблер, майл, яндекс - 2 штуки{/post}{/quote}  
 
для Gmail нужны еще две настройки:  
             .Item(CDO_Cnf & "smtpserverport") = 587  
             .Item(CDO_Cnf & "smtpusessl") = True  
 
но все равно "нет доступа в интернет" (брандмауэр отключен)... не знаю даже где искать причину
 
И все же, уважаемые эксперты, в чем может быть причина "НЕ подключенного Интернета"?
 
Немного модифицировал процедуру и вынес в модуль, но по прежнему не работает. Нет соединения с интернетом. Пробовал в разных сетях.  
 
Public Sub SendMail(Кому As String, Тема As String, Сообщение As String, АдресФайла As String)  
      Const CDO_Cnf = "http://schemas.microsoft.com/cdo/configuration/"  
      Dim oCDOCnf As Object, oCDOMsg As Object  
      Dim SMTPserver As String, sUsername As String, sPass As String, sMsg As String  
      On Error Resume Next  
      'Назначаем конфигурацию CDO  
      Set oCDOCnf = CreateObject("CDO.Configuration")  
      With oCDOCnf.Fields  
             .Item(CDO_Cnf & "sendusing") = 2  
             .Item(CDO_Cnf & "smtpauthenticate") = 2  
             .Item(CDO_Cnf & "smtpserverport") = 587  
             .Item(CDO_Cnf & "smtpusessl") = True  
             .Item(CDO_Cnf & "smtpserver") = "smtp.gmail.com"  
             .Item(CDO_Cnf & "sendusername") = "info@visit-karelia.ru"  
             .Item(CDO_Cnf & "sendpassword") = "password"  
             .Update  
      End With  
      'Создаем сообщение  
      Set oCDOMsg = CreateObject("CDO.Message")  
      With oCDOMsg  
             Set .Configuration = oCDOCnf  
             .BodyPart.Charset = "koi8-r"  
             .From = "info@visit-karelia.ru"  
             .To = Кому  
             .BCC = "info@visit-karelia.ru"  
             .Subject = Тема  
             .TextBody = Сообщение  
             If Len(АдресФайла) > 0 Then .AddAttachment АдресФайла  
             .Send  
      End With  
 
      Select Case Err.Number  
      Case -2147220973: sMsg = "Нет доступа к Интернет"  
      Case -2147220975: sMsg = "Отказ сервера SMTP"  
      Case 0: sMsg = "Письмо отправлено"  
      End Select  
      MsgBox sMsg, vbInformation  
      Set oCDOMsg = Nothing: Set oCDOCnf = Nothing  
End Sub
 
Аналогичная проблема. Выдаёт сообщение "Нет доступа к Интернет"
 
{quote}{login=Станислав}{date=29.09.2012 05:27}{thema=}{post}Выдаёт сообщение "Нет доступа к Интернет"{/post}{/quote}  
Так, может, на самом деле у Excel нет доступа в интернет?  
Отключите антивирус и файрвол, проверьте снова - должно заработать.
 
Добрый вечер. Подскажите пожалуйста первые шаги выполнения этого макроса. Тоесть данный код нужно вставить в модуль екселевського файла. А как заставить его функционировать? Спасибо всем.
 
Аналогичная проблема. Выдаёт сообщение "Нет доступа к Интернет"
 
Всем привет. Та же проблема  "Выдаёт сообщение "Нет доступа к Интернет""  
Выключенный брандмауэр Windows  
Отключенный антивирус и файервол  
Прокси сервера нет.  
smtp.gmail.com  
 
Очень и очень нужно для создания через почтовый клиент gmail списка рассылки для 30 адресатов вложенного отчета. Всем спасибо заранее за помощь и советы .
Страницы: 1
Читают тему
Наверх