Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

запрос о подверждении действия

40K
17 ноября 2009 года
devil_incarnate
32 / / 16.07.2009
написал процедуру, чтоб автоматически обновлять календарь работ и рассылать сотрудникам по внутренней почте и столкнулся с "бедой" подтверждения своих действий. безопасность поставил на минимум. подскажите как убрать это сообщение или как автоматом отвечать на него "да".
сообщения такие выскакивают:
"программа пытается автоматически получить доступ к адресам электронной почты, хранящимся в Outlook.
Разрешить действие? ..."
ДА/НЕТ/СПРАВКА

"проргамма пытается автоматически послать письмо от вашего имени..." ДА/НЕТ/СПРАВКА
40K
18 ноября 2009 года
devil_incarnate
32 / / 16.07.2009
Вот часть процедуры, в которой я создаю встречи и рассылаю в календарь сотрудникам. переменные извлекаются из одномерных массивов, которые были заполнены ранее.

data(n) - дата, когда нужно выполнить тот или иной отчёт
reportm(n) - название отчёта
makerm(n) - адрессное имя человека
и константы olga..jack - адрессное имя человека (нужны если отчёт нужно выполнять всем вместе). всё что нужно это исключить "алертсы" либо отвечать на них "да". в экселе я обычно писал

Application.DisplayAlerts = False (удаляю лист когда к примеру) Application.DisplayAlerts = true

но в аутлуке так не получилось.
pashulka, спасибо за ответ, но есть ли вариант попроще, чтоб избежать множества кликов при запуске макроса?

код:
Цитата:
For k% = 1 To n%

Dim data As String

data = datam(k%) & " 9:30:00 AM"


Set myOlApp = CreateObject("Outlook.Application")

Set myItem = myOlApp.CreateItem(olAppointmentItem)
myItem.MeetingStatus = olMeeting
myItem.Subject = reportm(k%)
'myItem.Location = "Conference Room B"
myItem.Start = data
myItem.Duration = 90

If words(k%) = "all" Then
myRequiredAttendee = myItem.Recipients.Add(olga)
myRequiredAttendee.Type = olRequired
myRequiredAttendee = myItem.Recipients.Add(vetal)
myRequiredAttendee.Type = olRequired
myRequiredAttendee = myItem.Recipients.Add(vovka)
myRequiredAttendee.Type = olRequired
myRequiredAttendee = myItem.Recipients.Add(lesya)
myRequiredAttendee.Type = olRequired
myRequiredAttendee = myItem.Recipients.Add(jack)
myRequiredAttendee.Type = olRequired

Else:
Set myRequiredAttendee = myItem.Recipients.Add(makerm(k%))
myRequiredAttendee.Type = olRequired
End If

'myItem.Display

myItem.Save
myItem.Send

Next

275
18 ноября 2009 года
pashulka
985 / / 19.09.2004
devil_incarnate, Ничего особого сложного там не предлагается, впрочем, если говорить о совсем простом варианте, то можно попробовать перед отправкой письма имитировать нажатие клавиши ENTER, т.е. использовать SendKeys "{ENTER}" , но если этот способ и сработает, то это будет крайне ненадёжный путь.

P.S.

Код:
Dim myOlApp As Outlook.Application, data As String

Set myOlApp = CreateObject("Outlook.Application")

For k% = 1 To n%

    data = datam(k%) & " 9:30:00 AM"
   
    ...

Next
40K
19 ноября 2009 года
devil_incarnate
32 / / 16.07.2009
c посылкой нажатия Enter не вышло.
Pashulka, не могли бы Вы объяснить как использовать второй способ, ведь у меня не сообщение в чистом виде, а отправка встречи. я пробывал приконнектить как-то этот код, но не вышло. заранее благодарен!
40K
01 декабря 2009 года
devil_incarnate
32 / / 16.07.2009
никто не в силах помочь?

зы решил пока с помощью програмулины Click yes

еще был такой вариант, но не смог разобраться как применить его к отправке календаря.
275
08 декабря 2009 года
pashulka
985 / / 19.09.2004
devil_incarnate, Помочь с примером не могу, т.к. MS Outlook у меня отсутствует.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог