Как найти и заменить тему встречи в календаре Outlook?
Замена темы встречи в календаре Outlook особенно полезна, когда нужно массово изменить определённые темы на единый текст. Например, можно легко заменить слово «Копия» в поле темы после импорта данных в Outlook. В этой статье представлен код VBA для поиска и замены нескольких тем встреч — подробности далее.
Поиск и замена темы встречи с помощью кода VBA
Поиск и замена темы встречи с помощью кода VBA
В этом разделе рассказывается, как с помощью приведённого ниже кода VBA выполнить поиск и замену темы встречи.
1. Сначала установите низкий уровень макросов в Outlook.
1) В Outlook 2010 и 2013 выберите «Файл» → «Параметры». В открывшемся диалоговом окне «Параметры Outlook» перейдите в раздел «Центр управления безопасностью» в левой части и нажмите кнопку «Параметры центра управления безопасностью».

В диалоговом окне «Центр управления безопасностью» выберите в левой части пункт «Параметры макросов», установите переключатель «Включить все макросы» в разделе «Параметры макросов» и нажмите кнопку «ОК». См. снимок экрана:

2) В Outlook 2007 выберите «Сервис» > «Центр управления безопасностью». В открывшемся диалоговом окне «Центр управления безопасностью» в левой части выберите «Параметры макросов», установите переключатель «Без проверки безопасности для макросов» и нажмите «ОК».

2. Нажмите клавиши «Alt» + «F11», чтобы открыть окно Microsoft Visual Basic for Applications.
3. В окне «Microsoft Visual Basic for Applications» дважды щёлкните, чтобы развернуть «Project1» > «Объекты Microsoft Outlook» > «ThisOutlookSession», и откроется редактор VBA. См. снимок экрана:

4. Скопируйте приведённый ниже код VBA в редактор и вставьте его, затем нажмите клавишу «F5», чтобы запустить код.
VBA: Поиск и замена тема встречи
Sub FindReplaceAppointment()
Dim oApp As Outlook.Application
Dim oCalFolder As Outlook.MAPIFolder
Dim oAppt As Outlook.AppointmentItem
Dim sOldText As String
Dim sNewText As String
Dim iCalChangedCount As Integer
Set oApp = Outlook.Application
MsgBox ("This script will perform a find/replace in the subject line of all appointments in a specified calendar.")
sOldText = InputBox("What is the text string that you would like to replace?")
sNewText = InputBox("With what would you like to replace it?")
' Check to be sure a Calendar folder was selected
Do
If Not (oCalFolder Is Nothing) Then
If (oCalFolder.DefaultItemType = olAppointmentItem) Then Exit Do
End If
MsgBox ("Please select a calendar folder from the following list.")
Set oCalFolder = Application.Session.PickFolder
On Error GoTo ErrHandler:
Loop Until oCalFolder.DefaultItemType = olAppointmentItem
' Loop through appointments in calendar, change text where necessary, keep count
iCalChangedCount = 0
For Each oAppt In oCalFolder.Items
If InStr(oAppt.Subject, sOldText) <> 0 Then
Debug.Print "Changed: " & oAppt.Subject & " - " & oAppt.Start
oAppt.Subject = Replace(oAppt.Subject, sOldText, sNewText)
oAppt.Save
iCalChangedCount = iCalChangedCount + 1
End If
Next
' Display results and clear table
MsgBox (iCalChangedCount & " appointments had text in their subjects changed from '" & sOldText & "' to '" & sNewText & "'.")
Set oAppt = Nothing
Set oCalFolder = Nothing
Exit Sub
ErrHandler:
MsgBox ("Macro terminated.")
End Sub
5. После запуска кода появится диалоговое окно Microsoft Outlook — нажмите «ОК».

6. Во втором диалоговом окне «Microsoft Outlook» введите текст, который нужно заменить, и нажмите «ОК».

7. В третьем диалоговом окне «Microsoft Outlook» введите текст, на который нужно заменить выделенное, и нажмите «ОК».

Примечание: если вы хотите просто удалить все слова «Копия» из темы в указанном календаре, оставьте это поле пустым.
8. Нажмите кнопку «ОК» в открывшемся диалоговом окне.

9. В диалоговом окне «Выбор папки» выберите нужный календарь в рамках указанной учётной записи электронной почты и нажмите «ОК». См. снимок экрана:

10. Затем появится диалоговое окно с уведомлением об успешной замене — нажмите кнопку «ОК».

11. После этого весь указанный текст в темах выбранного календаря будет заменён на новый.
Лучшие инструменты для повышения продуктивности в Office
Оцените совершенно новый Kutools для Outlook с 100+ потрясающими функциями!Нажмите, чтобы скачать прямо сейчас!
📧Автоматизация работы с электронной почтой: Автоответ (доступен для POP и IMAP) / Планирование отправки писем / Авто Копия/Скрытая копия по правилам при отправке писем / Автоматическое перенаправление (расширенное правило) / Автоматическое добавление приветствия / Автоматическое разделение писем с несколькими получателями на отдельные сообщения…
📨Управление электронной почтой: Отозвать письмо / Блокировка спама по теме и другим признакам / Удаление дубликатов писем / Расширенный поиск / Организация папок…
📁Продвинутая работа с вложениями: Пакетное сохранение / Пакетное отсоединение / Пакетное сжатие / Автосохранение / Автоматическое отсоединение / Автоматическое сжатие…
🌟Волшебство интерфейса: 😊Еще больше красивых и стильных эмодзи / Напоминание о важных входящих письмах / Сворачивание Outlook вместо закрытия…
👍Чудеса одним щелчком: Ответить всем с вложениями / Защита от фишинговых писем / 🕘Отображение часового пояса: текущее время отправителя…
👩🏼🤝👩🏻Контакты и календарь: Пакетное добавление контактов из выбранных писем / Разделение группы контактов на отдельные группы / Удаление напоминания о дне рождения…
Используйте Kutools на вашем любимом языке — поддержка английского, испанского, немецкого, французского, китайского и более чем 40 других языков!


🚀 Скачать одним щелчком — Получите все надстройки для Office
Настоятельно рекомендуется: Kutools for Office (5 в 1)
Скачайте одним щелчком пять установщиковсразу —Kutools для Excel, Outlook, Word, PowerPointи Office Tab Pro.Нажмите, чтобы скачать прямо сейчас!
- ✅Удобство одним щелчком: Скачайте все пять установочных пакетов за одно действие.
- 🚀Готовы к любой задаче в Office: устанавливайте нужные надстройки именно тогда, когда они вам понадобятся.
- 🧰Входит в комплект: Kutools для Excel / Kutools для Outlook / Kutools для Word / Office Tab Pro / Kutools for PowerPoint