Šiame straipsnyje sužinosite, kaip greitai naudoti VBA, kad „Outlook“ automatiškai paragintų, ar siųsti el. laišką, kai negavote atsakymo į konkretų el. laišką per tam tikrą laiką.
Kartais tikrai lauksite atsakymų į gyvybiškai svarbius el. laiškus. Kitaip tariant, turite tikėtis, kad gavėjas galės jums atsakyti kuo greičiau. Priešingu atveju, kol dar negavote atsakymo per numatytą laiką, vėl išsiųsite gavėjui el. laišką. Todėl, atsakydami į šį reikalavimą, čia pristatysime metodą, kuris naudoja VBA, kad „Outlook“ tokiu atveju automatiškai įspėtų ir paragintų. Skaitykite toliau, kad gautumėte išsamius veiksmus ir kodus.

Gaukite pranešimą, jei negausite atsakymo į konkretų el. laišką per numatytą laiką
- Pačioje pradžioje paleiskite savo „Outlook“.
- Tada turite nustatyti konkretų priminimo laiką konkrečiam el. paštui.
- Pirmiausia dešiniuoju pelės mygtuku spustelėkite konkretų el.
- Tada pasirinkite „Sekimas“ > „Pridėti priminimą“.
- Dialogo lange galite nustatyti priminimo laiką, kaip ir konkretų laiką, per kurį norite gauti atsakymą.
- Po to paspauskite „Alt + F11“ klavišus, kad pasiektumėte „Outlook VBA“ redaktorių.
- Tada naujame lange atidarykite projektą „ThisOutlookSession“ ir nukopijuokite į jį šiuos kodus.
Public WithEvents objInboxItems As Outlook.Items
Private Sub Application_Startup()
Set objInboxItems = Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub
'If receive the reply, clear the flag and remove the reminder
Private Sub objInboxItems_ItemAdd(ByVal Item As Object)
Dim objSentItems As Outlook.Items
Dim objVariant As Variant
Dim i As Long
Dim strSubject As String
Dim dSendTime As String
Set objSentItems = Outlook.Application.Session.GetDefaultFolder(olFolderSentMail).Items
If Item.Class = olMail Then
For i = 1 To objSentItems.Count
If objSentItems.Item(i).Class = olMail Then
Set objVariant = objSentItems.Item(i)
strSubject = LCase(objVariant.Subject)
dSendTime = objVariant.SentOn
If LCase(Item.Subject) = "re: " & strSubject Or InStr(LCase(Item.Subject), strSubject) > 0 Then
If Item.SentOn > dSendTime Then
With objVariant
.ClearTaskFlag
.ReminderSet = False
.Save
End With
End If
End If
End If
Next i
End If
End Sub
'Get a prompt asking if to send a notification email
Private Sub Application_Reminder(ByVal Item As Object)
Dim strPrompt As String
Dim nResponse As Integer
Dim objFollowUpMail As Outlook.MailItem
'You can change the subject as per your real case
If (Item.Class = olMail) And (LCase(Item.Subject) = "datanumen outlook repair") Then
strPrompt = "You haven't yet recieved the reply of " & Chr(34) & Item.Subject & Chr(34) & " within your expected time. Do you want to send a follow-up notification email?"
nResponse = MsgBox(strPrompt, vbYesNo + vbQuestion, "Confirm to Send a Follow-Up Notification Email")
If nResponse = vbYes Then
Set objFollowUpMail = Application.CreateItem(olMailItem)
With objFollowUpMail
.To = Item.Recipients.Item(1).Address
.Subject = "Follow Up: " & Chr(34) & Item.Subject & Chr(34)
.Body = "Please respond to my email " & Chr(34) & Item.Subject & Chr(34) & "as soon as possible"
.attachments.Add Item
.Display
End With
End If
End If
End Sub
- Tada pasirašykite šį kodą.
- Vėliau pakeiskite „Outlook“ makrokomandos parametrus, kad leistų naudoti skaitmeniniu būdu pasirašytas makrokomandas.
- Galiausiai paleiskite „Outlook“ iš naujo, kad suaktyvintumėte naują makrokomandą. Nuo šiol „Outlook“ veiks taip:
- Jei gavote atsakymą į konkretų el. laišką prieš pasirodant jo priminimui, „Outlook“ automatiškai išvalys vėliavėlę ir išjungs priminimą.
- Jei negavote atsakymo, kai suaktyvinamas priminimas, „Outlook“ paklaus, ar siųsti tolesnio pranešimo el. laišką. Jei pasirinksite „Taip“, el. laiškas bus išsiųstas. Jei pasirinksite „Ne“, raginimas iš karto išnyks.
Išspręskite erzinančias „Outlook“ problemas
Kadangi "Outlook" yra klaidų, siekiant užkirsti kelią Outlook korupcija, turėtumėte pasikliauti ne tik gautųjų įrankiu Scanpst.exe. Turėtumėte paruošti kitą galingą ir geros reputacijos taisymo įrankį, pvz DataNumen Outlook Repair, kuris gali atsikratyti erzinančių problemų, kurių Scanpst.exe negali išspręsti.
Autoriaus įvadas:
Shirley Zhang yra duomenų atkūrimo ekspertė DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant sql korupcija ir „Outlook“ taisymo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com


