Багато користувачів сподіваються, що Outlook може автоматично переміщувати та архівувати вхідні електронні листи до певних папок пошти відповідно до назв файлів вкладень. Таким чином, у цій статті ми запропонуємо швидкий спосіб допомогти вам отримати його за допомогою Outlook VBA.
Якщо ви хочете автоматично перемістити вхідні електронні листи до певних папок відповідно до назв файлів їх вкладень, ви напевно подумаєте про використання правила Outlook в першу чергу. Однак ви нарешті виявите, що правило Outlook не має функції перевірки імені файлу вкладення. Тому, якщо ви дійсно хочете це реалізувати, вам доведеться використовувати інші способи, наприклад, через надбудову третьої сторони або Outlook VBA. Тож тут ми навчимо вас, як цього досягти за допомогою VBA. Прочитайте далі, щоб отримати детальні операції та конкретні коди VBA.

Автоматично переміщувати вхідні електронні листи до певних папок на основі вкладень
- Для початку запустіть програму Outlook як завжди.
- Потім натисніть клавіші “Alt + F11”, щоб отримати доступ до редактора VBA.
- У наступному вікні “Microsoft Visual Basic for Applications” ви зможете знайти та двічі клацнути на проекті “ThisOutlookSession” зліва.
- Далі у вікні проекту “ThisOutlookSession” скопіюйте та вставте такі коди VBA.
Public WithEvents objMails As Outlook.Items
Private Sub Application_Startup()
Set objMails = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub objMails_ItemAdd(ByVal Item As Object)
Dim objMail As Outlook.MailItem
Dim objAttachments As Outlook.attachments
Dim objAttachment As Outlook.Attachment
Dim strAttachmentName As String
Dim objInboxFolder As Outlook.Folder
Dim objTargetFolder As Outlook.Folder
'Ensure the incoming item is an email
If TypeOf Item Is MailItem Then
Set objMail = Item
Set objAttachments = objMail.attachments
'Check if the incoming email contains one or more attachments
If objAttachments.Count > 0 Then
For Each objAttachment In objAttachments
strAttachmentName = objAttachment.DisplayName
Set objInboxFolder = Application.Session.GetDefaultFolder(olFolderInbox)
'Check the names of all the attachments
'Specify the target folders
If InStr(LCase(strAttachmentName), "worklog") > 0 Then
Set objTargetFolder = objInboxFolder.Folders("WorkLog")
ElseIf InStr(LCase(strAttachmentName), "report") > 0 Then
Set objTargetFolder = objInboxFolder.Folders("Report")
ElseIf InStr(LCase(strAttachmentName), "statistics") > 0 Then
Set objTargetFolder = objInboxFolder.Folders("Statistics")
End If
Next
'Move the email to specific folder
objMail.Move objTargetFolder
End If
End If
End Sub
- Згодом вам потрібно цифрово підписати новий проект VBA.
- По-перше, ви можете використовувати вбудований інструмент - цифрові сертифікати для проектів VBA, щоб створити особистий сертифікат.
- Потім у редакторі VBA натисніть «Інструменти»> «Цифровий підпис» на панелі інструментів.
- Далі дотримуйтесь інструкцій на екрані, щоб підписати його.
- Після цього ви можете вийти з редактора VBA і змінити рівень захисту макросів Outlook на низький.
- Пізніше вам слід перезапустити Outlook, щоб активувати новий проект VBA.
- Зрештою, відтепер Outlook автоматично перевірятиме назви файлів вкладень усіх вхідних електронних листів і переміщуватиме конкретні до певних папок.
Захистіть свої дані PST
Майже безперечним фактом є те, що Outlook схильний до пошкоджень. Отже, захистити ваші PST-дані від пошкоджень – досить складне завдання. Але все ж можна знайти деякі правила та поради. Наприклад, щоб запобігти втраті PST-даних, ви можете продовжувати регулярно створювати резервні копії даних. Крім того, щоб забезпечити негайне порятунок після збою Outlook, ви можете підготувати досвідченого... Виправлення PST інструмент, як DataNumen Outlook Repair.
Вступ автора:
Ширлі Чжан - експерт із відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі SQL Server відновлення та перспективні програмні продукти для ремонту. Для отримання додаткової інформації відвідайте WWW.datanumen.com

