Страницы: 1
RSS
Рассылка почты из Excel при помощи почтовой программы TheBAT!
 
Обнаружил окличній макросс на сайте http://excelvba.ru.  
Автору низкий поклон.  
Я в VBA чайник-копипастер, наметил что в исходном коде макроса, есть возможность прикреплять файлы, а в самой таблице с нет.  
 
Подскажите, пожалуйста, что поправить, чтобы можно было ещё и прикреплять файлы, ссылаясь на их путь, на диске.  
Заранее благодарен
 
А как вы хотите прикреплять файлы к таблице Excel???  
 
Файлы к письмам всегда разные надо прикреплять?  
 
Помочь вам не смогу. Проблема в том, вы сами код не пишете, какие файлы прикреплять - не объяснили, откуда брать имена файлов - не показали на примере...  
 
Был бы в вашем файле столбец с именами файлов (или гиперссылками на файлы, или полными путями к файлам) - тогда, конечно, добавили бы в код пару строк, чтобы это учитывалось.
 
Я имелл ввиду, чтобы для каждого письма можно было рикрепить разные файлы.  
Пример во вложении.
 
В макросе Формирование_и_Отправка_Писем  
 
замените строку  
ОтправитьПисьмоЧерезTheBat Адрес, Текст, Тема  
 
на строку  
ОтправитьПисьмоЧерезTheBat Адрес, Текст, Тема, ro.Cells(10) ' в 10 столбце - путь к файлу вложения
 
В теле письма сообщение:  
 
 
Файл C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ro.Cells(11) & ro.Cells(2) & ro.Cells(12) не найден
 
{quote}{login=HOPSRIGHT}{date=06.11.2012 06:14}{thema=}{post}В теле письма сообщение:  
 
 
Файл C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ro.Cells(11) & ro.Cells(2) & ro.Cells(12) не найден{/post}{/quote}  
Не так надо, - а так: ОтправитьПисьмоЧерезTheBat Адрес, Текст, Тема, ro.Cells(10) ' в 10 столбце - C:\ProgramData\Microsoft\Windows\Start Menu\Programs\  
После Programs имя Вашего файла на диске.
 
Напишите 2 строки кода - так вам проще будет не запутаться:  
 
folder$ = "C:\Documents and Settings\Admin\Рабочий стол\"  
filename$ = folder$ & ro.Cells(11) & ro.Cells(2) & ro.Cells(12)  
ОтправитьПисьмоЧерезTheBat Адрес, Текст, Тема, filename$  
 
 
А то вы что-то перемудрили...
 
И вообще, надо проверять наличие файла, особенно если имя файла формируется из ячеек:  
 
folder$ = "C:\Documents and Settings\Admin\Рабочий стол\"  
filename$ = folder$ & ro.Cells(11) & ro.Cells(2) & ro.Cells(12)  
 
if dir(filename$)="" then '  файл не найден  
msgbox "Не найден файл " & filename$  
filename$ ="" ' стираем имя файла, чтобы ничего не прикреплять к письму  
end if  
 
ОтправитьПисьмоЧерезTheBat Адрес, Текст, Тема, filename$
Страницы: 1
Читают тему
Наверх