Отчет о доступе к электронной почте CDO

У меня есть отчет о доступе, который изменен оператором SQL, так что создается один отчет для соответствующего получателя. Я использую CDO в своем коде VBA в Access 2007. Мне интересно получить этот отчет и отправить его по электронной почте. Как я могу сделать так, чтобы HtmlBody имел отчет о доступе?


person Sithelo    schedule 21.06.2012    source источник


Ответы (1)


Возможно что-то вроде этого. Идея состоит в том, чтобы сохранить отчет в формате HTML или RTF, а затем прочитать его в:

Const ForReading = 1

DoCmd.OutputTo acOutputReport, "Report1", acFormatHTML, "Report1.htm"

Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.OpenTextFile("Report1.htm", ForReading)
sBody = f.ReadAll
f.Close

obj.HTMLBody = sBody
person Fionnuala    schedule 21.06.2012
comment
Его работа и его большое обучение от вас. Бесконечно благодарен. Куда сохраняется отчет? Он удаляется после каждого цикла? - person Sithelo; 21.06.2012
comment
Нет, в приведенном выше примере он будет сохранен в папке документов по умолчанию (Мои документы). Вы можете указать путь ("C:\docs\Report1.htm" ), если хотите. Он будет перезаписываться в каждом цикле. Убедитесь, что вы не получаете предыдущую версию в своем электронном письме! У вас будет только ограниченный набор параметров форматирования, доступных в отчетах MS Access при использовании вывода HTML, например, строки не всегда могут быть включены. - person Fionnuala; 21.06.2012