Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 06.10.2009, 17:35   #1
hunter27
Новичок
Джуниор
 
Регистрация: 06.10.2009
Сообщений: 2
По умолчанию Отправка почты макросом Excel

Добрый день!

Есть таблица на листе Excel. Подскажите как с помощью макроса отправить ее письмом или сам лист, но не как вложенный файл xls.

Sub mai()
ActiveSheet.Select

Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem)
SM.To = "address@address.ru"
SM.Subject = "Тема"
SM.Body = ActiveSheet.Range("A1:D8").Value 'Вот здесь как отобразить диапозон, не знаю?

On Error Resume Next
SM.Send
Set SM = Nothing
Set OutlookApp = Nothing
End sub
hunter27 вне форума
Старый 06.10.2009, 17:55   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
как с помощью макроса отправить ее письмом или сам лист, но не как вложенный файл xls
А в каком виде Вы предлагаете отправлять таблицу?
В виде текста? Картинки? Ещё как-то?

К письму можно прикрепить файл. А таблицу Excel (или лист excel) весьма сложно сохранить во что-то, не являющееся файлом...

Цитата:
(добавлено позже)

Отправить почту из Excel можно как без использования почтовых программ,
так и при помощи почтовой программы TheBAT!

Посмотрите самый простой способ, как организовать отправку почты (рассылку писем)
(с использованием программы заполнения документов по шаблонам, с последующей отправке по почте)
В программе есть возможность формировать письма по шаблону (с подстановкой данных из таблицы Excel),
прикреплять сформированные документы и файлы из выбранной папки, и много других возможностей.

Поищите также здесь: http://excelvba.ru/category/mail

Последний раз редактировалось EducatedFool; 12.01.2013 в 10:15.
EducatedFool вне форума
Старый 07.10.2009, 11:21   #3
hunter27
Новичок
Джуниор
 
Регистрация: 06.10.2009
Сообщений: 2
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
А в каком виде Вы предлагаете отправлять таблицу?
В виде текста? Картинки? Ещё как-то?

К письму можно прикрепить файл. А таблицу Excel (или лист excel) весьма сложно сохранить во что-то, не являющееся файлом...
В виде текста.

Наглядный пример, в Excel выбрать Файл- Отправить- Сообщение.
hunter27 вне форума
Старый 13.10.2009, 09:47   #4
Rom1k06
Форумчанин
 
Регистрация: 30.07.2008
Сообщений: 125
По умолчанию

Мне тоже интеересно !
Но только немного не так.
отправить "сообщение как вложение"
Rom1k06 вне форума
Старый 10.02.2010, 18:14   #5
sasha_prof
Форумчанин
 
Регистрация: 06.01.2010
Сообщений: 292
По умолчанию

Ребята а макрос не вставляет подпись в письмо. Хотя она есть в аутлуке
sasha_prof вне форума
Старый 11.03.2010, 11:46   #6
sasha_prof
Форумчанин
 
Регистрация: 06.01.2010
Сообщений: 292
По умолчанию

Вот макрос который отправляет почту

Dim OutlookApp As Object, SM As Object


Set OutlookApp = CreateObject("Outlook.Application")
Set SM = OutlookApp.CreateItem(olMailItem)

SM.To = emailTo
SM.Ññ = emailCc
SM.Subject = TextDoTemy





On Error Resume Next
SM.Send

'OutlookApp.Quit


Set SM = Nothing
Set OutlookApp = Nothing

Что нужно дописать чтоб макросом вставлялся копия листа с книги в почту????????
sasha_prof вне форума
Старый 11.03.2010, 12:01   #7
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Сначала копируете лист с сохранением, а затем указываете сохраненную книгу как вложение:
Код:
Sheets(1).copy
Activeworkbook.SaveAs "C:\Test.xls" 'Путь для сохраннения

SM..Attachments.Add ("C:\Test.xls") 'Путь к сохраненной книге
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума
Старый 11.03.2010, 12:08   #8
sasha_prof
Форумчанин
 
Регистрация: 06.01.2010
Сообщений: 292
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
А в каком виде Вы предлагаете отправлять таблицу?
В виде текста? Картинки? Ещё как-то?
Как книгу ексель...
sasha_prof вне форума
Старый 11.03.2010, 14:06   #9
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

И мне интересно...
Только мне хотелась бы так. Работаю в открытой книги, Лист1, Лист2, Лист3,....., там у меня таблицы, создать кнопку, "ПОЧТА", нажал и книга, только с двумя Листами отправилась по адресату.
Может кнопка "ПОЧТА" и определяет количества листов отправляемых по почте, т. е. стоит кнопка "ПОЧТА" на втором листе, значит отправить два листа, на третьем -три......
Хочу заменить факс, на почту.
Только не через проги, типа Outlook....

Последний раз редактировалось valerij; 11.03.2010 в 14:12.
valerij вне форума
Старый 11.03.2010, 15:27   #10
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Цитата:
Сообщение от valerij Посмотреть сообщение
И мне интересно...
Только мне хотелась бы так. Работаю в открытой книги, Лист1, Лист2, Лист3, т. е. стоит кнопка "ПОЧТА" на втором листе, значит отправить два листа, на третьем -три...
Только не через проги, типа Outlook....
Вот весь макрос(отправляет книгу из почтовой программы по умолчанию):

Код:
Sub Send_ActWorkbook()
    Dim li As Long
    Application.DisplayAlerts = False
    For li = Sheets.Count To ActiveSheet.Index + 1 Step -1
        Sheets(li).Delete
    Next li

    ActiveWorkbook.SaveAs Application.DefaultFilePath & Application.PathSeparator & "На_Отпраку.xls", xlNormal
    ActiveWorkbook.SendMail "The-Prist@yandex.ru", "Привет от VBA"
    ActiveWorkbook.ChangeFileAccess xlReadOnly
    Kill ActiveWorkbook.FullName
    Application.DisplayAlerts = True
End Sub
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отправка почты Fess HTML и CSS 15 11.03.2010 20:24
Отправка почты Fo][ Работа с сетью в Delphi 1 20.01.2009 23:15
отправка почты? gusluk Работа с сетью в Delphi 2 17.11.2008 07:45
Отправка почты Fenix Nexsais Работа с сетью в Delphi 5 06.09.2007 22:27
Отправка почты Mikola PHP 4 12.08.2007 04:17