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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2014, 15:52   #1
Ania Shepeleva
Новичок
Джуниор
 
Регистрация: 27.03.2014
Сообщений: 1
По умолчанию Макрос для outlook проверка текста письма!!!

Задача написать макрос осуществляющий поиск дат определенного формата в тексте.Если такие будут найдены то осуществить их сверку с системной датой,при несовпадение выдать ошибку.
Данный макрос был написан для вордовского документа,помогите перенести на outlook ((.Необходимо проверить наличие и сходство дат в тексте письма (открытого в данный момент).С синтаксисом макросов outlook ранее не сталкивалась,но очень необходимо.Буду благодарна за помощь!

Макрос для ворда:

Private Sub сверка_даты_титульный()
Const P1 As Long = 1 ' первая траница поиска
Const P2 As Long = 100 ' последняя страница поиска
Const T As String = "<[0-9]{1;2}>[. ^s]@[А-ЯЁа-яё0-9]@[. ^s]@[0-9]{4}>" ' маска поиска
Dim D As Document, R As Range, N As Long, P As Long, a As String, c As Date

' документ
Set D = ActiveDocument
' разбиваем документ на страницы
D.Repaginate
' область начала поиска
Set R = D.GoTo(wdGoToPage, wdGoToAbsolute, P1)
' параменты поиска
With R.Find
.ClearFormatting
.Replacement.ClearFormatting
.Forward = True
.Wrap = wdFindStop
.MatchWildcards = True
.Text = T
End With
' цикл поиска
N = 0 ' счетчик
Do

R.Find.Execute
If R.Find.Found <> True Then Exit Do ' не нашли
P = R.Information(wdActiveEndPageNumber ) ' страница находки
If P > P2 Then Exit Do ' выход за диапазон страниц

N = N + 1

a = Selection.Text 'найденный выше текст
If IsDate(a) Then
Else
End If

If IsDate(a) Then
'
c = CDate(a)

If Day(c) = Day(Date + -1) And Month(c) = Month(Date + -1) And Year(c) = Year(Date + -1) Then

Else
MsgBox (a & " не соответствует системной дате " & Date)
End If
End If
R.Select
R.Collapse Direction:=wdCollapseEnd
Loop
End Sub
Ania Shepeleva вне форума Ответить с цитированием
Старый 30.03.2014, 16:26   #2
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Цитата:
Сообщение от Ania Shepeleva Посмотреть сообщение
Задача написать макрос…
Макрос для ворда…
Напомнило тему Сверка системной даты в колонтитулах!

Фактически вы ищете: 1) все сегодняшние письма; 2) прочие. Зачем такие навороты?
Sasha_Smirnov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос для Outlook (обработка писем) Dmitriy I Microsoft Office Word 0 14.08.2012 22:20
макрос для Outlook для переадресации писем Olya1985 Microsoft Office Excel 1 13.09.2011 16:50
Макрос для Outlook kotmotroskin Microsoft Office Excel 0 02.02.2011 13:16
Макрос для сохранения писем из Outlook. GoreProgrammist Microsoft Office Excel 1 16.11.2009 19:40
Интересный макрос для создания писем в Outlook через Excel Neo007 Microsoft Office Excel 17 19.04.2009 20:44