Добрый день! Прошу помочь по проблеме: написал в 2003 экселе макрос, отправляющий книгу автоматом по электронке (по сути такой: :)
Sub Макрос1()
Workbooks.Add
ActiveWorkbook.SendMail Recipients:="qwerty@zxcv.ru", Subject:="1"
End Sub
Пробуем запустить макрос у коллеги, у которой стоит 2007 эксель, все виснет и пишет, что "Excel ожидает завершения OLE операции другим приложением". Возможно в настройках фандербёрда различия (у обоих стоит последняя доступная на сегодня версия 11ая)....  Уже все перепробовал, проблема остается :(( Такое чувство, что эксель формирует письмо -> мозила его пытается отправить -> у нее не получается -> эксель ждет ответа от мозилы, ждет, ждет, ждет.... :) Либо, как вариант, эксель может не виснуть, а выдавать ошибку "1004. Сбой почтовой системы".

Кто-нибудь знает, в каких настройках фандербёрда порыться, что попереключать, чтобы заработало?

P.S.: если пробовать прикладывать книгу к письму командой Application.Dialogs(xlDialogSendMail).Show то все прекрасно работает с тем же Thunderbird'ом. Однако цель как раз в том, чтобы автоматом подставлялся нужный адрес, и письмо само отсылалось....

Тема перенесена из форума «Thunderbird» в форум «Разработка».

присоединяюсь к вопросу. проблема та же.
Интересно что старая версия Thunderbird 2.0.0.12 отправляет без проблем

удалил новую поставил старую версию, не заработало пока не удалил имя отправителя из параметров учетной записи. Было написано русскими буквами. А может и не в этом дело...

Я решил не полагаться на всякие COM-ориентированные происки системы и пользуюсь универсальным вариантом отправки из командной строки, который при переносе на другой офис и другую ОС будет проще использовать.

Сама строка:
"c:\program files\mozilla thunderbird\thunderbird.exe" -compose "to=test@mail.ru,subject=test,attachment='file:///d:/test/test.txt'"

Ну и обработал напильником для себя вот так: макросом обрабатываю книгу для приведения к нужному формату (требуется для поставщиков), сохраняю ее копию на d:\ , составляю из переменных командную строку для отправки, отправляю файл.

Выделить код

Код:

send_soft = "c:\bin\thunderbird\thunderbird.exe"

stroke1 = " -compose to='" & "a@b.com.ua, иванов <c@d.com>"
stroke2 = "',subject='" & NomerZakaza
stroke3 = "',body=""Заказываем материала - " & kol_vo
stroke4 = """,attachment=" & "'d:\" & ActiveWorkbook.Name & "'"
stroke = send_soft & stroke1 & stroke2 & stroke3 & stroke4 

RunThund = Shell(stroke, 1)

Отправляю информацию по нескольким адресам.  В stroke2 и stroke3 впихнул нужную переменную - сколько всего заказываем материала у поставщика, для быстрого поиска по телу письма, чтоб не открывать саму книгу, если что. В stroke4 как раз получаю имя файла для вложения. Ну можно накуролесить много.

В итоге даже при закрытом Thunderbird появляется окно сообщения, отправляется само и закрывается. Мне нравится.

Sub thu()
send_soft = "C:\Program Files\Mozilla Thunderbird\thunderbird.exe"

stroka1 = " -compose to='" & "outofrange@mail.ru"
stroka2 = "',subject='" & "проверка"
stroka3 = "',body=""Тест "
stroka4 = """,attachment=" & "'D:\JOB\167\files\ADELAIS BAY HOTEL.xlsx'"
stroka = send_soft & stroka1 & stroka2 & stroka3 & stroka4

Set SMs = CreateObject("WScript.Shell")
SMs.Exec stroka
end sub

Подскажите, не понимаю почему Thunderbird открывается, сообщение формируется, но кнопку отправить все равно приходится нажимать?