KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Come fare per evitare che Outlook invii i promemoria troppo presto o troppo tardi?

AutoreKelly Data di modifica

Ad esempio, lavori ogni giorno dalle 9:00 alle 18:00, ma ora stai creando un appuntamento per le 10:00 e imposti in Outlook un promemoria di 2 ore. Ciò significa che il promemoria scatterà alle 8:00, prima dell’inizio del tuo orario di lavoro. In casi particolari, potrebbe addirittura suonare a mezzanotte — una situazione piuttosto scomoda. Molti utenti di Outlook preferirebbero evitare promemoria troppo anticipati o fuori orario. Di seguito ti presento una macro VBA per risolvere questo problema in Outlook.

Office Tab – Abilita la modifica e la navigazione a schede in Microsoft Office, rendendo il lavoro un gioco da ragazzi
Sblocca Kutools per Outlook ora e goditi oltre 100 funzionalità con accesso illimitato per sempre
Potenzia il tuo Outlook 2024 - 2010 o Outlook 365 con queste funzionalità avanzate. Goditi 100+ funzionalità potenti e migliora la tua esperienza email!

Per evitare che Outlook invii promemoria troppo presto o troppo tardi, procedi come segue:

Passaggio 1: premi contemporaneamente i tasti Alt+F11 per aprire la finestra di Microsoft Visual Basic for Applications.

Passaggio 2: espandi l’elemento Oggetti Microsoft Outlook nel riquadro sinistro e incolla la seguente macro VBA in ThisOutlookSession.

VBA: Evita promemoria troppo presto o troppo tardi in Outlook

Public WithEvents g_CalendarItems As Outlook.Items
Public Sub Application_Startup()
Set g_CalendarItems = Outlook.Session.GetDefaultFolder(olFolderCalendar).Items
End Sub
Private Sub g_CalendarItems_ItemAdd(ByVal Item As Object)
CheckReminder Item
End Sub
Private Sub g_CalendarItems_ItemChange(ByVal Item As Object)
CheckReminder Item
End Sub
Sub CheckReminder(ByVal Item As Object)
On Error GoTo ProcError
Dim strProcName As String
strProcName = "CheckReminder"
reminderMaxHour = 20
reminderMinHour = 9
Dim aAptItem As Outlook.AppointmentItem
Set aAptItem = Item
If aAptItem.ReminderSet Then
Dim reminderDate As Date
reminderDate = aAptItem.Start - aAptItem.ReminderMinutesBeforeStart / (24 * 60)
reminderHour = (reminderDate - Int(reminderDate)) * 24
tolerance = 0.01 ' avoid floating point small diffs (little bit less than a min)
If reminderHour < reminderMinHour - tolerance Or reminderHour > reminderMaxHour + tolerance Then
' best guess, first try to advance to next minHour
reminderDateSuggestion = reminderDate + (reminderMinHour - reminderHour) / 24
' verify if first guess is valid
If reminderHour < reminderMinHour - tolerance And reminderDateSuggestion <= aAptItem.Start Then
' OK, first guess is valid, keep it
ElseIf reminderHour > reminderMaxHour Then
' go back to max hour (same day)
reminderDateSuggestion = reminderDate - (reminderHour - reminderMaxHour) / 24
Else
' go back to max hour (previous day)
reminderDateSuggestion = reminderDate - (reminderHour + 24 - reminderMaxHour) / 24
End If
rep = MsgBox("The Reminder time is out of specified working period. Would you like to change the Reminder time?" , vbQuestion + vbYesNoCancel)
If rep = vbCancel Then
aAptItem.Display
ElseIf rep = vbYes Then
aAptItem.ReminderMinutesBeforeStart = (aAptItem.Start - reminderDateSuggestion) * 24 * 60
aAptItem.Save
End If
End If
End If
ProcExit:
Exit Sub
ProcError:
MsgBox "Unanticipated error " & Err.Number & " " & Err.Description & vbCrLf & "In procedure: " & strProcName
End Sub

 

Nota: puoi specificare il tuo orario di lavoro modificando i seguenti parametri nel codice VBA riportato sopra:
reminderMaxHour = 20
reminderMinHour = 9

Passaggio 3: salva questa macro VBA e riavvia Microsoft Outlook.

D’ora in poi, quando creerai un appuntamento con un promemoria al di fuori dell’orario lavorativo da te specificato, apparirà una finestra di dialogo di promemoria dopo aver fatto clic sul pulsante Salva e chiudi.

lo screenshot del passaggio relativo all'impedire che Outlook ricordi troppo presto o troppo tardi

Se l’orario del promemoria è precedente all’ora minima specificata (reminderMinHour), fai clic su nella finestra di dialogo: l’orario del promemoria verrà aggiornato in modo da suonare all’ora minima indicata (reminderMinHour).

Se l’orario del promemoria è successivo all’ora massima specificata (reminderMaxHour), fai clic su nella finestra di dialogo: l’orario del promemoria verrà modificato in modo che il promemoria suoni all’ora massima specificata (reminderMaxHour).

Nota: Questo codice VBA funziona perfettamente con Outlook 2013, ma non è compatibile con Outlook 2010 e 2007.


Migliori strumenti per la produttività in Office

Scopri il nuovissimo Kutools per Outlook con 100+ funzionalità incredibili!Clicca per scaricare ora!

🤖KUTOOLS AI:Utilizza tecnologia AI avanzata per gestire le email senza sforzo, inclusi rispondere, riassumere, ottimizzare, estendere, tradurre e comporre email.

📧Automazione delle email: Risposta automatica (disponibile per POP e IMAP) / Invio email programmato / CC/BCC automatico in base a regole durante l’invio delle email / Inoltro automatico (regola avanzata) / Aggiunta automatica del saluto / Divisione automatica delle email con destinatari multipli in messaggi individuali...

📨Gestione delle email: Richiama Email / Blocca le email truffaldine in base all’oggetto e ad altri criteri / Elimina email duplicate / Ricerca avanzata / Organizza cartelle...

📁Allegati Pro: Salvataggio batch / Distacco batch / Compressione batch / Salvataggio automatico / Distacco automatico / Compressione automatica

🌟Magia dell’interfaccia: 😊 Più emoji graziose e accattivanti / Ti avvisa all’arrivo di email importanti / Riduci a icona Outlook invece di chiuderlo...

👍Meraviglie con un clic: Rispondi a Tutti con Allegati / Email anti-phishing / 🕘 Mostra il fuso orario – Ora corrente del mittente...

👩🏼‍🤝‍👩🏻Contatti e calendario: Aggiungi contatti in blocco dalle email selezionate / Dividi un gruppo di contatti in gruppi individuali / Rimuovi i promemoria dei compleanni...

Usa Kutools nella tua lingua preferita: supporta inglese, spagnolo, tedesco, francese, cinese e oltre 40 altre lingue!

Sblocca istantaneamente Kutools per Outlook con un solo clic! Non aspettare oltre: scaricalo ora e aumenta subito la tua efficienza!

kutools for outlook features1kutools for outlook features2

🚀 Download con un clic — Ottieni tutti i componenti aggiuntivi per Office

Fortemente consigliato: Kutools for Office (5-in-1)

Un clic per scaricare cinque programmi di installazionetutti insieme —Kutools per Excel, Outlook, Word, PowerPointe Office Tab Pro.Clicca per scaricare ora!

  • Comodità con un solo clic: scarica tutti e cinque i pacchetti di installazione in un’unica azione.
  • 🚀Pronto per qualsiasi attività in Office: installa i componenti aggiuntivi che ti servono, esattamente quando ti servono.
  • 🧰Inclusi: Kutools per Excel / Kutools per Outlook / Kutools per Word / Office Tab Pro / Kutools for PowerPoint