Dacă trebuie să vă împiedicați să trimiteți anumite e-mailuri în afara orelor de lucru, puteți utiliza metoda prezentată în acest articol. Acesta poate permite Outlook să verifice automat dacă este în programul de lucru atunci când trimiteți anumite e-mailuri și să îl întârzie până la programul de lucru.
Uneori, momentul în care compuneți și trimiteți un e-mail nu este în programul dvs. de lucru. În acest caz, este posibil să doriți să amânați trimiterea acestui e-mail până la orele de lucru ulterioare. În general, puteți utiliza funcția nativă „Delay Delivery” pentru a întârzia astfel de e-mailuri. Cu toate acestea, prin acest mijloc, ar trebui să specificați de fiecare dată timpul de livrare. Este prea supărător. Ulterior, vă vom împărtăși o bucată de cod VBA, care poate verifica automat dacă se află în orele de lucru atunci când trimiteți un anumit e-mail și amână rapid trimiterea acestuia până la programul de lucru.

Întârzie rapid trimiterea anumitor e-mailuri până la programul de lucru
- De la bun început, lansați programul Outlook.
- Apoi, în ecranul principal Outlook emergent, puteți apăsa tastele „Alt + F11”.
- În continuare, veți avea acces cu succes la editorul Outlook VBA.
- După aceea, trebuie să localizați și să deschideți proiectul „ThisOutlookSession”.
- Ulterior, copiați următorul cod VBA în această fereastră de proiect.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim objMail As MailItem
Dim NewSendTime As String
Dim bDelayMail As Boolean
Dim nPrompt As Integer
bDelayMail = True
If TypeOf Item Is MailItem Then
Set objMail = Item
'Work on specific emails only
'You can change the conditions as per your needs
If objMail.Recipients.Item(1).Address = "boss@datanumen.com" Then
Select Case Weekday(Date, vbMonday)
'Delay 2 days if today is Saturday
Case 6
NewSendTime = (Date + 2) & " 09:00:00"
'Delay 1 days if today is Saturday
Case 7
NewSendTime = (Date + 1) & " 09:00:00"
Case Else
If DatePart("h", Now) < 9 Then
'Delay to 9 o'clock if now is too early
NewSendTime = Date & " 09:00:00"
ElseIf DatePart("h", Now) > 18 Then
Select Case Weekday(Date, vbMonday)
'Delay 3 days if today is Friday and now is over 6 PM
Case 5
NewSendTime = (Date + 3) & " 09:00:00"
'Delay to 9 o'clock if now is before 6 PM
Case Else
NewSendTime = (Date + 1) & " 09:00:00"
End Select
Else
bDelayMail = False
End If
End Select
If bDelayMail = True And objMail.DeferredDeliveryTime = "1/1/4501" Then
'Ask if to delay sending this email
nPrompt = MsgBox("Outside Working Hours:" & vbCrLf & "Do you want to delay this email until " & NewSendTime & "?", vbYesNo + vbExclamation, "Delay Email")
If nPrompt = vbYes Then
objMail.DeferredDeliveryTime = NewSendTime
Else
objMail.DeferredDeliveryTime = "1/1/4501"
End If
End If
End If
End If
End Sub
- Ulterior, vi se va solicita să atribuiți un certificat digital acestui e-mail.
- Și apoi modificați setările macrocomenzilor Outlook pentru a permite macrocomenzile semnate.
- De acum înainte, de fiecare dată când trimiteți e-mailuri care îndeplinesc criteriile predefinite, dacă este în afara programului de lucru, veți primi un prompt precum următoarea imagine:
- Dacă selectați „Da”, Outlook va programa să fie trimis până la orele de lucru.
Salvați fișierele Outlook deteriorate
Outlook a câștigat o mulțime de felicitări datorită nenumăratelor sale caracteristici. Cu toate acestea, are încă un defect mortal. Adică, Outlook este predispus la erori și corupție. Prin urmare, ar trebui să faceți o copie de rezervă a fișierelor Outlook în mod regulat. Vă poate împiedica să suferiți pierderi dureroase de date Outlook. În plus, ar fi mai bine să faceți mâna pe un instrument puternic de reparații, cum ar fi DataNumen Outlook Repair, care poate repara Outlook probleme în câteva secunde.
Introducerea autorului:
Shirley Zhang este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv recuperare mdf și produse software de reparații Outlook. Pentru mai multe informații vizitați www.datanumen.com

