Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 11.01.2018
Сообщений: 3
Outlook

Как получить список всех повторений задачи в Outlook за указанный период?

26.08.2019, 20:54. Показов 1353. Ответов 1

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Необходимо решить следующую задачу. За указанный период (дата От и До) получить список всех задач из Outlook. Причем для повторяющихся должны быть указаны все отдельные экземпляры. Не могу придумать, как решить. Для встреч есть возможность использовать метод GetOccurance, который принимает дату и проверяет, есть ли на нее встреча. Для задач, к сожалению, метод не работает.
Пока смог придумать только следующее: применять к задаче GetReccurancePattern, считывать параметры повторения и вычислять даты, на которые приходятся повторы. Затем сверять с нужными. Но варианты настройки повторений крайне разнообразные и прописать их все в коде выглядит задачей, как минимум, очень трудоемкой.
Есть и еще вариант. При экспорте задач через Файл - Экспорт за указанный период выгружаются все повторения задачи в CSV. Может есть способ делать такой экспорт через VBA? (хотя, конечно, лучше в коде перебирать отдельные экземпляры повторений задачи).

В общем, если кто знает как решить - поделитесь)

Кросс
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.08.2019, 20:54
Ответы с готовыми решениями:

Outlook: произвести подсчет всех входящих сообщений за указанный пользователем период
Доброго времени суток уважаемые форумчане! Помогите решить задачку. Необходимо произвести подсчет в Outlook всех входящих...

Как получить список электронных адресов из Outlook Express?
Кто знает как получить список электронных адресов из Outlook Express. Если нужно сделать конвертор всех баз данных из него...

Как получить список всех пользователей и т.д.
Список пользователей домена Список групп домена Список групп локальной машины Заранее огромное спасиба!!!

1
0 / 0 / 0
Регистрация: 11.01.2018
Сообщений: 3
29.08.2019, 15:39  [ТС]
Решил через создание временной встречи

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Function GetRecTaskDates(dStart As Date, dEnd As Date, objTask As Object)
    'Функция принимает объект "Задача" (TaskItem) из Outlook и две даты
    'Возвращает даты повторения указанной задачи в указанном периоде дат
 
    Dim objTempApnt As Object
    Dim objTaskPatt As Object
    Dim objTempPatt As Object
    Dim objCurApnt As Object
    Dim dCurDate As Date
    Dim arrResult()
    Dim iCount As Integer
    Dim n As Integer
    Dim lRecType As Long
     
    'создали временную встречу
    Set objTempApnt = objTask.Application.CreateItem(olAppointmentItem)
    objTempApnt.Subject = "temp"
     
    'считали шаблоны настроек повторения с исходной задачи и временной встречи
    Set objTempPatt = objTempApnt.GetRecurrencePattern
    Set objTaskPatt = objTask.GetRecurrencePattern
     
    'перенесли шаблон повторения с задачи на временную встречу
    'порядок переноса важен, переносимые настройки зависят от типа шаблона повторения OlRecurrenceType
    With objTempPatt
        .RecurrenceType = objTaskPatt.RecurrenceType
        lRecType = .RecurrenceType
        If objTaskPatt.DayOfMonth Then .DayOfMonth = objTaskPatt.DayOfMonth
        If lRecType = 1 Or lRecType = 3 Or lRecType = 6 Then .DayOfWeekMask = objTaskPatt.DayOfWeekMask
        .StartTime = #9:00:00 AM#
        .EndTime = #10:00:00 AM#
        .PatternStartDate = objTaskPatt.PatternStartDate
        If objTaskPatt.Interval Then .Interval = objTaskPatt.Interval
        If objTaskPatt.NoEndDate Then
            .NoEndDate = objTaskPatt.NoEndDate
        Else
            .Occurrences = objTaskPatt.Occurrences
            .PatternEndDate = objTaskPatt.PatternEndDate
        End If
        If lRecType >= 5 Then .MonthOfYear = objTaskPatt.MonthOfYear
        If lRecType = 3 Or lRecType = 6 Then .Instance = objTaskPatt.Instance
    End With
     
    'сохранили встречу
    objTempApnt.Save
     
    'перебираем все даты нужного периода, и если на дату есть встреча - переносим дату в массив
    For dCurDate = dStart To dEnd
        On Error Resume Next
        Set objCurApnt = objTempPatt.GetOccurrence(dCurDate + objTempPatt.StartTime)
        If Err.Number = 0 Then
            n = n + 1
            ReDim Preserve arrResult(1 To n)
            arrResult(n) = dCurDate
        End If
        Err.Clear
    Next dCurDate
    On Error GoTo 0
     
    'удалили временную задачу
    objTempApnt.ClearRecurrencePattern
    objTempApnt.Delete
     
    If n > 0 Then GetRecTaskDates = arrResult
 
End Function
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.08.2019, 15:39
Помогаю со студенческими работами здесь

Как получить список всех пользователей ПК?
Как получить список всех пользователей на конкретной машине? Мож функция какая есть...

Как получить список всех процессов?
Привет всем не подкажете как получить список всех процессов(не только запущенных).А потом чтобы можно было выбрать процес и запустить его.я...

Запрос, возвращающий список всех клиентов, совершивших заказ за определенный период времени
Cформулируйте запрос, возвращающий список всех клиентов (с указанием фамилии и имени), совершивших заказ за определенный период времени ...

Как получить список всех айди на сайте?
нужно получить список всех айпи в сайте а точнее их значение как это сделать помогите к примеру есть такой код как получить...

Как получить список всех запущенных приложений?
Здравствуйте! Нужно получить список всех запущенных приложений, написал вот такой код: using System; using System.Diagnostics; ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru