Pēc noklusējuma kārtulu var palaist tikai vienā mapē vienlaikus. Šajā rakstā mēs iemācīsim, kā izmantot VBA koda daļu, lai palaistu noteiktu kārtulu visās pasta mapēs.
Programma Outlook ļauj lietotājiem kārtulu izpildīt manuāli. Jūs varat vienkārši piekļūt dialoglodziņam “Noteikumi un brīdinājumi” un nospiediet pogu “Palaist noteikumus tūlīt”. Nākamajā dialoglodziņā atlasiet konkrētu kārtulu un mapi, kurā vēlaties palaist šo kārtulu. Bet, ja vēlaties ātri izpildīt kārtulu visās pasta mapēs, varat izmantot šo VBA kodu.

Ātri izpildiet noteiktu kārtulu visās pasta mapēs
- Pirmkārt, start savu Outlook programmu.
- Pēc tam galvenajā Outlook logā nospiediet taustiņu pogas “Alt + F11”.
- Pēc tam jaunajā logā “Microsoft Visual Basic for Applications” jums jāatver neizmantots modulis.
- Pēc tam šajā moduļa logā nokopējiet zemāk redzamo VBA kodu. Turklāt jums vajadzētu mainīt dažas rindiņas, pamatojoties uz jūsu pašu lietu, piemēram, kārtulas nosaukumu.
Sub RunSpecificRule_AllMailFolders()
Dim objStores As Outlook.Stores
Dim objStore As Outlook.Store
Dim objPSTFile As Outlook.Folder
Dim objFolders As Outlook.folders
Dim objFolder As Object
Set objStores = Outlook.Application.Session.Stores
'Process all Outlook PST files in your Outlook
For Each objStore In objStores
Set objPSTFile = objStore.GetRootFolder
For Each objFolder In objPSTFile.folders
Call ProcessFolders(objFolder)
Next
Next
MsgBox "Complete!", vbExclamation + vbOKOnly, "Run Rule "
End Sub
Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
Dim objRules As Outlook.Rules
Dim objRule As Outlook.Rule
Dim objSubfolder As Outlook.Folder
Set objRules = Outlook.Application.Session.DefaultStore.GetRules
'Change the rule name as per your actual case
Set objRule = objRules.Item("Move Mails to Temp")
On Error Resume Next
'Only work on non-empty Mail folder
If objCurrentFolder.Items.count > 0 And objCurrentFolder.DefaultItemType = olMailItem Then
With objRule
.Enabled = True
.Execute ShowProgress:=True, Folder:=objCurrentFolder, IncludeSubfolders:=True
End With
End If
'Process subfolders recursively
If objCurrentFolder.folders.count > 0 Then
For Each objSubfolder In objCurrentFolder.folders
Call ProcessFolders(objSubfolder)
Next
End If
End Sub
- Pēc tam jums jāpārbauda Outlook makro iestatījumi, nodrošinot, ka makro ir atļauts.
- Galu galā jūs varat izmēģināt.
- Vienkārši noklikšķiniet uz apakšprogrammas “RunSpecificRule_AllMailFolders”.
- Pēc tam nospiediet taustiņu F5, lai aktivizētu šo kodu.
- Tālāk makro darbosies nekavējoties.
- Kad tā būs pabeigta, jūs saņemsit ziņojumu, piemēram, šo ekrānuzņēmumu. Tas attiecas uz noteikumu, kas ir pabeigts.
Uzmanieties no ļaunprātīgiem makro
Kā mēs visi zinām, ļaunprātīgi e-pasta ziņojumi ir kļuvuši arvien niknāki. Šādi e-pasta ziņojumi bieži tiek piegādāti ar ļaunprātīgiem makro. Tādējādi, ja iestatāt zemu Outlook makro drošības līmeni, jums ir jāuzmanās no slēptajiem vīrusiem un ļaunprogrammatūrām. Turklāt ir saprātīgi iegūt spēcīgu PST labošanas rīku, piemēram, DataNumen Outlook Repair. Tas ir spējīgs remonts PST failu un iegūstiet maksimālos datus, neizlaižot sviedrus.
Autora ievads:
Šērlija Džana ir datu atkopšanas eksperte DataNumen, Inc., kas ir pasaules līderis datu atkopšanas tehnoloģiju, tostarp atgūt mdf un perspektīvas remonta programmatūras produktus. Lai iegūtu vairāk informācijas, apmeklējiet vietni www.datanumen. Ar

