Mesai saatleri dışında belirli e-postalar göndermenizi engellemeniz gerekiyorsa, bu makalede gösterilen yöntemi kullanabilirsiniz. Belirli e-postaları gönderdiğinizde Outlook'un çalışma saatleri içinde olup olmadığını otomatik olarak kontrol etmesine ve çalışma saatlerine kadar ertelemesine izin verebilir.
Bazen, bir e-posta oluşturup gönderdiğiniz zaman, çalışma saatleriniz içinde değildir. Bu durumda, bu e-postayı göndermeyi sonraki çalışma saatlerine kadar ertelemek isteyebilirsiniz. Genel olarak, bu tür e-postaları geciktirmek için yerel "Gecikmeli Teslimat" özelliğini kullanabilirsiniz. Ancak bu sayede her seferinde teslimat saatini belirtmeniz gerekmektedir. Bu çok zahmetli. Bundan sonra, belirli bir e-posta gönderdiğinizde çalışma saatleri içinde olup olmadığını otomatik olarak kontrol edebilen ve göndermeyi çalışma saatlerine kadar hızla erteleyebilen bir VBA kodu parçası paylaşacağız.

Belirli E-postaların Gönderilmesini Çalışma Saatlerine Kadar Hızla Geciktirin
- En başta, Outlook programınızı başlatın.
- Ardından açılan Outlook ana ekranında “Alt + F11” tuşlarına basabilirsiniz.
- Ardından, başarılı bir şekilde Outlook VBA düzenleyicisine erişebileceksiniz.
- Bundan sonra, “ThisOutlookSession” projesini bulup açmanız gerekiyor.
- Ardından, aşağıdaki VBA kodunu bu proje penceresine kopyalayın.
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
- Daha sonra bu e-postaya bir dijital sertifika atamanız istenecektir.
- Ardından, imzalanmış makrolara izin vermek için Outlook makro ayarlarınızı değiştirin.
- Bundan sonra, önceden belirlenmiş kriterlere uyan e-postaları her gönderdiğinizde, mesai saatleri dışında ise aşağıdaki görüntüye benzer bir uyarı alacaksınız:
- "Evet"i seçerseniz, Outlook çalışma saatlerine kadar gönderilmesini planlar.
Hasarlı Outlook Dosyalarını Kurtarma
Outlook, sayısız özelliği nedeniyle pek çok övgü aldı. Ancak yine de ölümcül bir kusuru var. Yani, Outlook hatalara ve bozulmaya eğilimlidir. Bu nedenle, Outlook dosyalarınızı düzenli olarak yedeklemelisiniz. Ağrılı Outlook veri kaybı yaşamanızı önleyebilir. Buna ek olarak, güçlü bir tamir aracına sahip olsanız iyi olur. DataNumen Outlook Repairolabilir Outlook'u onar saniyeler içinde sorunlar.
Yazar Tanıtımı:
Shirley Zhang, bir veri kurtarma uzmanıdır. DataNumendahil olmak üzere veri kurtarma teknolojilerinde dünya lideri olan , Inc. mdf kurtarma ve görünüm onarım yazılım ürünleri. Daha fazla bilgi için ziyaret edin www.datanumen.com

