Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Макрос отправки письма - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Excel и другие приложения » Outlook » Макрос отправки письма
Макрос отправки письма
VIDEO56 Дата: Вторник, 07.06.2016, 14:47 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 262
Репутация: 23 ±
Замечаний: 0% ±

Excel 2010
Всех еще раз сердечно приветствую.
Есть задача. Оператор-звонарь ведет журнал входящих звонков. При поступлении звонка заполняется карта клиента, назначается менеджер и ему улетает письмо с координатами клиента. Тут слава богу все норм. Вводится регламент перезвона менеджером не позднее 15 минут с момента уведомления. Как заставить макрос выявлять просроченные контакты и отправлять контрольное письмо на другой ящик один раз и более его в рассылку не включать? Столбец в котором идет расчет просроченного времени сидит формула, которая с помощью макроса обновляется каждые 30 сек.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
   Dim R&: R = Target.Row: If R < 3 Then Exit Sub
    With CreateObject("Outlook.Application")
       With .CreateItem(0)
          .To = [AE1]
         .Subject = "ВНИМАНИЕ! НОВЫЙ ВХОДЯЩИЙ ЗВОНОК. НЕОБХОДИМО СВЯЗАТЬСЯ С КЛИЕНТОМ В ТЕЧЕНИЕ 15 МИНУТ!"
        .Body = "Контрагент: " & Cells(R, 4) & vbCrLf & _
              "ЛПР: " & Cells(R, 5) & vbCrLf & _
              "Телефон для связи с клиентом: " & Cells(R, 6) & vbCrLf & _
              "Адрес электронной почты: " & Cells(R, 7) & vbCrLf & _
              [AF1] & ": " & Cells(R, 9) & vbCrLf & _
              "Статус работы с клиентом: " & Cells(R, 14) & vbCrLf & _
              "НУЖНО СВЯЗАТЬСЯ С КЛИЕНТОМ. ВРЕМЯ ПОШЛО. ТИК ТАК ТИК ТАК!!!"
           .Display ' если нужно посмотреть письмо
            .Send
        End With
   End With
End Sub
[/vba]
К сообщению приложен файл: 0527671.xlsm(57Kb)


Всем удачного дня!

Сообщение отредактировал VIDEO56 - Вторник, 07.06.2016, 14:58
 
Ответить
СообщениеВсех еще раз сердечно приветствую.
Есть задача. Оператор-звонарь ведет журнал входящих звонков. При поступлении звонка заполняется карта клиента, назначается менеджер и ему улетает письмо с координатами клиента. Тут слава богу все норм. Вводится регламент перезвона менеджером не позднее 15 минут с момента уведомления. Как заставить макрос выявлять просроченные контакты и отправлять контрольное письмо на другой ящик один раз и более его в рассылку не включать? Столбец в котором идет расчет просроченного времени сидит формула, которая с помощью макроса обновляется каждые 30 сек.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
   Dim R&: R = Target.Row: If R < 3 Then Exit Sub
    With CreateObject("Outlook.Application")
       With .CreateItem(0)
          .To = [AE1]
         .Subject = "ВНИМАНИЕ! НОВЫЙ ВХОДЯЩИЙ ЗВОНОК. НЕОБХОДИМО СВЯЗАТЬСЯ С КЛИЕНТОМ В ТЕЧЕНИЕ 15 МИНУТ!"
        .Body = "Контрагент: " & Cells(R, 4) & vbCrLf & _
              "ЛПР: " & Cells(R, 5) & vbCrLf & _
              "Телефон для связи с клиентом: " & Cells(R, 6) & vbCrLf & _
              "Адрес электронной почты: " & Cells(R, 7) & vbCrLf & _
              [AF1] & ": " & Cells(R, 9) & vbCrLf & _
              "Статус работы с клиентом: " & Cells(R, 14) & vbCrLf & _
              "НУЖНО СВЯЗАТЬСЯ С КЛИЕНТОМ. ВРЕМЯ ПОШЛО. ТИК ТАК ТИК ТАК!!!"
           .Display ' если нужно посмотреть письмо
            .Send
        End With
   End With
End Sub
[/vba]

Автор - VIDEO56
Дата добавления - 07.06.2016 в 14:47
Rioran Дата: Пятница, 21.04.2017, 17:26 | Сообщение № 2
Группа: Авторы
Ранг: Ветеран
Сообщений: 896
Репутация: 284 ±
Замечаний: 0% ±

Excel 2013
VIDEO56, здравствуйте.

Задача делится на несколько самостоятельных вопросов.

1). Регулярная проверка: в Excel'е сложно запрограммировать регулярные проверки. Такие проверки, обычно, будут блокировать работу других макросов и будут завязаны на пересчёт книги. То есть, если в файле много тяжёлых формул - работать с ним придётся дольше обычного. Настройка регулярной проверки, по кому сроки истекли, а по кому нет - самая сложная часть.

2). Отслеживание коммуникации: достаточно добавить дополнительный столбец для отметки, уходило ли клиенту письмо. Пусть по умолчанию, например, в нём стоит 0. Если письмо успешно отправлено - пусть ставится цифра 1.

3). Отправка письма: на основании проверки из пункта "1" и, если по пункту "2" мы видим что коммуникация отсутствует - выполняем аналог кода, который у Вас уже есть.

Делать этот код целиком - лично мне не интересно. Но если будут более детальные вопросы - добро пожаловать.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеVIDEO56, здравствуйте.

Задача делится на несколько самостоятельных вопросов.

1). Регулярная проверка: в Excel'е сложно запрограммировать регулярные проверки. Такие проверки, обычно, будут блокировать работу других макросов и будут завязаны на пересчёт книги. То есть, если в файле много тяжёлых формул - работать с ним придётся дольше обычного. Настройка регулярной проверки, по кому сроки истекли, а по кому нет - самая сложная часть.

2). Отслеживание коммуникации: достаточно добавить дополнительный столбец для отметки, уходило ли клиенту письмо. Пусть по умолчанию, например, в нём стоит 0. Если письмо успешно отправлено - пусть ставится цифра 1.

3). Отправка письма: на основании проверки из пункта "1" и, если по пункту "2" мы видим что коммуникация отсутствует - выполняем аналог кода, который у Вас уже есть.

Делать этот код целиком - лично мне не интересно. Но если будут более детальные вопросы - добро пожаловать.

Автор - Rioran
Дата добавления - 21.04.2017 в 17:26
Мир MS Excel » Вопросы и решения » Excel и другие приложения » Outlook » Макрос отправки письма
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!