![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Пробую, спасибо
|
![]() |
![]() |
![]() |
#12 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Так. Вот что получилось. Я только каменты убрал.
Sub SendmailTheBat() FPath$ = "D:\Заказ\Счета\" ОтправитьПисьмоЧерезTheBat [a2], [f2], [g2], FPath & Cells(2, 2) & ".pdf" End Sub Function ОтправитьПисьмоЧерезTheBat(ByVal Email As String, _ ByVal Текст As String, Optional ByVal Тема As String = "", _ Optional ByVal AttachFilename As String = "") As Boolean strTO = "TO=" & Chr(34) & Email & Chr(34) strSUBJECT = "SUBJECT=" & Chr(34) & Replace(Тема, """", "`") & Chr(34) ' ???? ????????? Filename$ = Environ("temp") & "\mail." & Fix(Rnd() * 1E+15) ff = FreeFile: Open Filename$ For Output As #ff Print #ff, Текст: Close #ff strTEXT = "TEXT=" & Chr(34) & Filename$ & Chr(34) ' Chr(34) - это кавычка If AttachFilename <> "" Then strATTACH = "ATTACH=" & Chr(34) & AttachFilename & Chr(34) TheBatPath = ПутьКФайлуПрограммыTheBAT: DoEvents Cmd$ = Chr(34) & TheBatPath & Chr(34) & " /MAIL;" & strTO & ";" & strSUBJECT & ";" & _ strTEXT & ";" & strATTACH & " /SENDALL; /MINIMIZE;" CreateObject("WScript.Shell").Exec Cmd$ End Function Function ПутьКФайлуПрограммыBAT() As String On Error Resume Next: Err.Clear Key$ = "HKEY_CURRENT_USER\Software\RIT \The Bat!\EXE path" ПутьКФайлуПрограммыTheBAT = CreateObject("WScript.Shell").RegRe ad(Key$) End Function Подсвечивает желтым CreateObject("WScript.Shell").Exec Cmd$ и пишет, что параметр задан неверно. |
![]() |
![]() |
![]() |
#13 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
CreateObject("WScript.Shell").Exec Cmd$ подсвечивает желтым
|
![]() |
![]() |
![]() |
#14 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
![]()
Вы уж определитесь - или вы переделываете названия функций, и дальше САМОСТОЯТЕЛЬНО ковыряетесь в коде,
или же слушаете, что я говорю, и вставляете код функций без правки. Я вам что написал в предыдущем посте? Цитата:
Цитата:
|
||
![]() |
![]() |
![]() |
#15 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Все!!!! Заработало!!!! ОГРАМНЕЙШЕЕ СПАСИБО. Это у меня при копировании отсюда в VBA пропал русский шрифт. Пришлось перенабирать. Вот и пропустил. Сейчас проверю еще раз.
|
![]() |
![]() |
![]() |
#16 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Рано обрадовался. Не прошло и двух часов, работать перестал. Ситуация двоякая: письма отправляются, но не доходят или доходят, но без темы, сообщения и вложения. Удалил все нафиг, вставил по новой - та же история. Где я накосячил?
|
![]() |
![]() |
![]() |
#17 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Стало светить красным вот эту строку:
ПутьКФайлуПрограммыTheBAT = CreateObject("WScript.Shell").RegRe ad(Key$) Что-то поменялось в Batе? |
![]() |
![]() |
![]() |
#18 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
![]() Цитата:
Не трогайте функции - они тогда будут работать как надо. Все проблемы надо искать в вашем коде (и исправления вносить только в него): Цитата:
В моём коде его не было - вы опять что-то левое скопировали... |
||
![]() |
![]() |
![]() |
#19 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Нашел глюк. Дела было в чем.
Из А2 брался адрес почты, по которому отправлялось сообщение. Из F2 - тема письма. Из G2 - тело письма. Во-первых, у меня были перепутаны местами ячейки F2 и G2. Итог таков: Sub SendmailTheBat() FPath$ = "D:\Заказ\Счета\" ОтправитьПисьмоЧерезTheBat [a2], [g2], [f2], FPath & Cells(2, 2) & ".pdf" End Sub Вот так все встало на свои места. Во-вторых, текст в ячейке G2, откуда бралось тело письма, автоматически формируется путем сцепления значений нескольких ячеек из общей базы и имеющих уникальные атрибуты для каждого клиента, как-то, номер заказа, дата заказа, стоимость и т.д. При сцеплении получаемый текст идет сплошняком, без абзацев. Не совсем красиво. Желая отформатировать в формуле СЦЕПИТЬ в нужных местах вставил перенос строки путем добавления "alt-enter". Но, так как, в коде были перепутаны местами ячейки F2 и G2 (текст темы письма и текст тела письма), то по всей видимости первый введенный мной "alt-enter" отсек все остальные функции по вставке остального текста и прикреплению файла к письму. Игорь, СПАСИБО!!!! Последний раз редактировалось strannick; 30.11.2011 в 11:54. |
![]() |
![]() |
![]() |
#20 |
Форумчанин
Регистрация: 21.10.2011
Сообщений: 433
|
![]()
Возвращаясь к напечатанному: Уважаемые гуру форума! Подскажите, возможно ли в этом коде только формирование письма, передача в The Bat! без, собственно, самой отправки. Так получается, когда не указан адрес почты. Тогда письмо попадает в "Исходящие" и висит там.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание шаблона Outlook сообщения и отправка его по почте | avos002 | Microsoft Office Excel | 2 | 25.01.2011 08:18 |
Вопрос по TService и отправка по почте. | Sti.k | Общие вопросы Delphi | 2 | 10.06.2010 13:39 |
СОХРАНЕНИЕ В ФОРМАТЕ *.PDF | provodnikam | Microsoft Office Word | 10 | 20.02.2010 10:31 |
отправка аипи+параметр по почте (Delphi/PHP) | dyonysos | Помощь студентам | 0 | 05.10.2009 19:12 |
отправка файла по почте | DeDoK | Работа с сетью в Delphi | 1 | 10.11.2008 10:13 |