Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/57: Рейтинг темы: голосов - 57, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
1

Автоматическая рассылка файлов адресатам в Outlook

12.04.2012, 15:46. Показов 11853. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
По работе каждый день приходится обрабатывать множество заказов (ктотрые вытаскиваются из программки) и рассылать их поставщикам по определенным адресам через Outlook...
Есть макрос (делала его не я), который сохраняет эти файлы в папку и присваивает им определенные имена (имя состоит из инфо в ячейках B2 & B3 & B4 файла, в каждом заказе значения этих ячеек меняются), вкладывает их в новое письмо в Outlooke и добавляет адресата, тему и тело письма.

Проблема в следующием:
1. необходимо дополнительно ставить в копию письма определенные адреса в зависимости от значения в ячейке B2
2. В один день возможно несколько заказов в одинаковыми именами и при сохранении происходит ошибка, т.к. файл с таким именем уже существует. Можно как-то так сделать, чтобы к имени сохраняемого файла автоматически добавлялся какой-нибудь символ (если файл с таким именем уже существует в этой папке) например "1" в конце имени? и соответственно если это третий за день файл, то на конце добавлять "2" и т.д.
3. И еще, при автоматической отправке всплывает окошко, которое говорит, что Outlook пытается без моего ведома отправить письмо и спрашивает, действительно ли я хочу это сделать. Можно сделать так, чтобы этого окошка не было и письма отправлялись сразу?
Заранее огромное спасибо!
Вложения
Тип файла: xls заказ.xls (17.0 Кб, 123 просмотров)
Тип файла: zip Save and Send.zip (31.7 Кб, 154 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.04.2012, 15:46
Ответы с готовыми решениями:

Рассылка писем через Outlook
Добрый день, нашел макрос в интернете по рассылке писем через Outlook, помогите его доработать,...

Макрос для Outlook: автоматическая проверка всех входящих писем
Друзья, простите что обращаюсь, но уже давно пытаюсь и никак не могу написать макрос для outlook....

Макрос для Outlook: автоматическая проверка входящих писем и сохранение аттачментов
Доброго времени суток,друзья! Я не являюсь специалистом в области макросов, но возникла...

Автоматическая пересылка письма в Outlook, но "затирание" адреса первого отправителя
Добрый день, друзья! Надеюсь на вашу помощь, в решении следующей задачи: Надо настроить Outlook...

19
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
13.04.2012, 16:05 2
1 и 2 сделал
по 3-му - это вопрос к вашим системным администраторам. Скорее всего предупреждение выдает бдительная антивирусная программа или что-то вроде нее. По крайней мере я не сталкивался в Microsoft Office с подобной защитой.
Вложения
Тип файла: xls Save and Send.xls (89.0 Кб, 115 просмотров)
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
13.04.2012, 17:28  [ТС] 3
Не получается... выдает ошибку...
Вложения
Тип файла: zip Doc1.zip (81.2 Кб, 27 просмотров)
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
13.04.2012, 18:11 4
Может быть у вас лист называется не "Таблица поставщиков"?

Либо вы по какой-то причине останавливали выполнение макроса после его открытия.

Я, правда, нашел у себя другую ошибку - забыл поменять путь к папке "Загрузки". Перезалил.
Вложения
Тип файла: xls Save and Send.xls (88.0 Кб, 79 просмотров)
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
14.04.2012, 13:36  [ТС] 5
Да, путь я заметила и поменяла
Странно, как ни пытаюсь, не получается... название листа я не меняла... пыталась уже перенабрать от руки, все равно ошибку выдает, что это может быть?
а у Вас все получилось?
Вложения
Тип файла: zip Doc1.zip (90.7 Кб, 25 просмотров)
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 11:30 6
Странно. А у вас в настройках безопасности макросы выключены? Возможно, не срабатывает макрос при открытии книги, который объявляет переменную открытой книги.
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
16.04.2012, 11:41  [ТС] 7
Да нет, все включено... причем файл, который я изначально выложила работает, а Ваш нет. Я в свой от руки вписала изменения из Вашего файла, все равно ошибку какую-то выдает. А то что у меня Office 2003 никак на это влиять не может?
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 12:24 8
Да, там еще проблема с надстройками - у вас не получится вызывать эту форму из любой книги по кнопке, потому что ей требуется таблица поставщиков. В принципе, это можно настроить, но не уверен, что это окупится сэкономленным временем на открытие конкретной книги.

Вроде все поправил, должно работать.
Вложения
Тип файла: xls Save and Send.xls (86.5 Кб, 81 просмотров)
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
16.04.2012, 14:18  [ТС] 9
Опять ошибка... я конечно в этом вопросе совсем деревянная, но почему изначально все работало, а тут Вы добавили адреса в копию и на этом месте стала вылезать ошибка?

Set oWS = oWB.Sheets("Таблица поставщиков")

и по кнопке у меня вызывалась форма из любой книги
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 14:39 10
Тут все непросто. Дело в том, что у вас стоит надстройка, а я меняю код в модуле самой книги, который по идее даже не выполняется. Почему у вас раньше работало - не знаю. Попробуйте использовать не кнопку на панели, а ту, что в самом файле на листе "Кнопка". Возможно, вам придется отказаться от надстройки и кнопки на панели, потому что у вас используются данные с листа из книги. Попробуйте отключить надстройку (Сервис -> Надстройки -> Save and Send) и посмотрите, заработает ли.
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
16.04.2012, 14:56  [ТС] 11
Отключила надстройку, через кнопку в файле сработало, но копия так и не подцепилась.
Мне кажется, я не очень однозначно написала изначально, прошу прощения, мне нужны адреса в копии в зависимости от ячейки B2 в файле "заказ" (то есть там, где стоит ЧП Сидоренко_магазин2 (магизин 3 и т.д), и в зависимости от этого нужно ставить адрес конкретного магазина.
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 15:26 12
Цитата Сообщение от Анна777 Посмотреть сообщение
Отключила надстройку, через кнопку в файле сработало, но копия так и не подцепилась.
У меня в поле "Копия" письма появляется адрес эл. почты "sidorenko..."
У вас так не происходит?
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
16.04.2012, 15:46  [ТС] 13
с ЧП Сидоренко все работает, но когда начинаю подставлять туда другие (реальные) адреса, то ничего не получается. что я не так делаю?

мне кажется я методом тыка поняла... привязка стоит к столбцу B (файл Save and Send) (где перечислены все поставщики), а мне нужно, чтобы привязывалось к столбцу E и в зависимости от этого выбиралось значение ячейки в столбце F, но сделать это технически я к сожалению пока что не могу...
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 16:22 14
Брр. Давайте еще раз. Что должно браться из файла "Заявки" для поиска в столбце "E"?
0
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
16.04.2012, 19:29  [ТС] 15
Грубо говоря, есть несколько магазинов в сети, где я работаю, и куча поставщиков. Все заказы отправляются из центрального офиса, и когда я отправляю заказы поставщикам, надо, чтобы копия этого заказа отправлялась и в магазин тоже (чтобы им было видно, что для них заказано). Поэтому нужно, чтобы в письме в поле "кому" был адрес поставщика (ЧП Иванов), а копии стоял адрес магазина покупателя (ЧП Сидоренко_магазин1).
То есть, в копии в зависимости от магазина покупателя (значения ячейки В2 файла заказ) должен вставляться адрес из файла Save and Send, лист Таблица поставщиков, столбец F, (в столбце E перечислены все возможные магазины). Все аналогично тому, что Вы уже сделали для поставщиков, только теперь привязка будет к магазину. Надеюсь, теперь понятно, а то я вечно как собака, понимаю ,а сказать нормально не могу
Вложения
Тип файла: xls Save and Send.xls (65.5 Кб, 50 просмотров)
Тип файла: xls заказ.xls (27.0 Кб, 37 просмотров)
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 19:51 16
Замените в модуле mFunctions функцию GetCopy:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Function GetCopy(NameShop As String)
    Dim oWS As Worksheet
    Dim LastRow As Long
    Dim i As Long
    
    Set oWS = oWB.Sheets("Òàáëèöà ïîñòàâùèêîâ")
    
    With oWS
        LastRow = .Cells.Find("*", , , , xlByRows, xlPrevious).Row
        
        For i = 2 To LastRow
            If .Cells(i, 5) = NameShop Then
                GetCopy = oWS.Cells(i, 6)
                Exit For
            End If
        Next i
    End With
    
    Set oWS = Nothing
End Function
И в коде формы ufSelectBook (правая кнопка на форме, View Code) модуль Private Sub cbSaveSend_Click() на

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Private Sub cbSaveSend_Click()
    Dim oTemp_WB As Workbook
    Dim oSaved_WB As Workbook
    Dim wbName As String
    Dim sNameTo As String
    Dim sNameShop As String
    Dim i As Long
    
    With Me.lbBooks
        For i = 0 To .ListCount - 1
            If .Selected(i) Then
                Set oTemp_WB = Application.Workbooks(.Column(0, i))
                sNameTo = oTemp_WB.ActiveSheet.Cells(3, 2)
                sNameShop = oTemp_WB.ActiveSheet.Cells(2, 2)
                wbName = sNameShop & " " & Split(sNameTo, "/")(0) & " " & oTemp_WB.ActiveSheet.Cells(4, 2)
                
                Set oSaved_WB = Saved_File(oTemp_WB, wbName)
                
                Call Create_Mail(GetAdress(sNameTo), GetBody(sNameTo), wbName, GetCopy(sNameShop), oSaved_WB.Path & "\" & oSaved_WB.Name)
            End If
        Next
    End With
ufSelectBook.Hide
End Sub
1
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
16.04.2012, 20:02  [ТС] 17
Спасибо большое, завтра проверю на работе, дома Outlookа нет
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
16.04.2012, 20:04 18
Цитата Сообщение от Анна777 Посмотреть сообщение
Спасибо большое, завтра проверю на работе, дома Outlookа нет

Не по теме:

не цитируйте так много.

1
0 / 0 / 0
Регистрация: 13.03.2012
Сообщений: 24
17.04.2012, 17:46  [ТС] 19
Спасибо, все работает!
0
735 / 203 / 11
Регистрация: 23.06.2011
Сообщений: 440
17.04.2012, 18:04 20
Цитата Сообщение от Анна777 Посмотреть сообщение
Спасибо, все работает!
На здоровье
0
17.04.2012, 18:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2012, 18:04
Помогаю со студенческими работами здесь

Автоматическая обработка файлов MS Word
Доброе время суток! Вопрос вот в чем: каждую неделю у меня появляется около 700-1000 файлов MS...

Автоматическая рассылка почты в указанное время через Outlook!
Здравствуйте. Возникла такая идея. Пользуюсь Аутлуком для отправки почты. Ежемесячно в...

Рассылка писем с вложениями сразу нескольким адресатам
Всем доброго времени суток! Пытаюсь реализовать рассылку письма с файлом нескольким адресатам. ...

Как отправить готовое html-письмо в формате msg в Outlook 2013 сразу нескольким адресатам в виде рассылки
Есть готовое письмо в HTML-формате подготовленное в OUTLOOK 2013 и сохраненное в формате .msg....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru