Cara Cepat Mengetahui Semua Janji Temu Lain yang Bercanggah dengan Janji Tertentu di Outlook

Kongsi Sekarang:

Apabila anda membuat atau menukar temu janji dalam kalendar Outlook, Outlook akan menyemak secara automatik jika terdapat sebarang temu janji yang bercanggah. Pada masa ini, jika anda ingin menyemak konflik tersebut, anda boleh menggunakan kaedah yang diperkenalkan dalam catatan ini.

Mungkin anda pernah melihat teks "Bertentangan dengan janji temu lain" semasa membuat atau mengubah janji temu Outlook. Ini kerana Outlook dapat memeriksa konflik secara automatik. Walau bagaimanapun, Outlook tidak dapat membantu anda mencari konflik dengan cepat oleh ciri lalai. Oleh itu, di sini kami akan memberitahu anda kaedah untuk menghasilkan fungsi untuk mencari semua janji temu yang bertentangan.

Cepat Ketahui Semua Janji Temu Lain yang Bercanggah dengan Janji Temu di Outlook

Ketahui Semua Janji Temu Lain yang Bercanggah dengan Temujanji Tertentu

  1. Pada awalnya, lancarkan program Outlook anda.
  2. Kemudian, di tetingkap utama Outlook, tekan butang "Alt + F11".
  3. Sekali gus, anda akan mengakses editor Outlook VBA, di mana anda perlu membuka modul yang tidak digunakan.
  4. Seterusnya, salin kod VBA berikut ke dalam modul ini.
Sub FindOutConflictingAppointments()
    Dim objAppointment As AppointmentItem
    Dim dStartTime, dEndTime As Date
    Dim strFilter As String
    Dim objAppointments As Items
    Dim objFoundAppointments As Items
    Dim objItem As AppointmentItem
    Dim i As Long
    Dim strConflicts As String
    Dim strMsg As String
 
    Select Case Application.ActiveWindow.Class
           Case olExplorer
                Set objAppointment = Application.ActiveExplorer.Selection(1)
           Case olInspector
                Set objAppointment = Application.ActiveInspector.CurrentItem
    End Select
 
    dStartTime = objAppointment.start
    dEndTime = objAppointment.End
 
    Set objAppointments = Application.ActiveExplorer.CurrentFolder.Items
 
    i = 1
 
    '1: Find all appts whose end time within the start and end time of source appt
    strFilter = "[End] >= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [End] <= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
 
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    '2: Find all appts occurring within the start and end time of source appt
    strFilter = "[Start] >= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [End] <= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
 
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    '3: Find all appts whose start time within the start and end time of source appt
    strFilter = "[Start] >= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [Start] <= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
 
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    '4: Find all appts cover the entire source appt
    strFilter = "[Start] <= " & Chr(34) & Format(dStartTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34) & " AND [End] >= " & Chr(34) & Format(dEndTime, "mm/dd/yyyy hh:mm AMPM") & Chr(34)
 
    Set objFoundAppointments = objAppointments.Restrict(strFilter)
  
    For Each objItem In objFoundAppointments
        If objItem.Subject <> objAppointment.Subject Then
           strConflicts = strConflicts & i & ". " & objItem.Subject & vbCrLf
           i = i + 1
        End If
    Next
 
    strMsg = i - 1 & " Conflicting Appointments:" & vbCrLf & vbCrLf & strConflicts
    MsgBox strMsg, vbInformation + vbOKOnly, "Check Conflicts"
End Sub

Kod VBA - Ketahui Semua Janji Temu Lain yang Bercanggah dengan Temujanji Tertentu

  1. Selepas itu, anda boleh keluar dari tetingkap semasa.
  2. Kemudian tambahkan makro ini ke Bar Alat Akses Pantas seperti biasa.
  3. Kemudian anda juga harus memastikan bahawa makro diaktifkan di Outlook anda. Cukup pergi ke "Pengaturan Makro" untuk memeriksanya.
  4. Akhirnya anda boleh mencuba.
  • Pertama, pilih atau buka janji temu, di mana terdapat arahan "Bertentangan dengan janji temu yang lain".
  • Kemudian klik pada butang makro di Bar Alat Akses Pantas.
  • Sekali gus, anda akan mendapat mesej yang menyenaraikan semua janji temu yang bertentangan, ditunjukkan sebagai tangkapan skrin berikut:Mesej yang menyenaraikan semua janji temu yang bertentangan

Langkah berjaga-jaga penting sebelum Kerosakan Outlook

Telah diketahui bahawa Outlook mudah rosak dan mengalami ralat. Oleh itu, adalah penting untuk sentiasa bersedia untuk kerosakan Outlook. Salah satu langkah berjaga-jaga yang paling penting ialah sandaran berkala. Di samping itu, adalah dicadangkan untuk menyediakan sandaran khusus yang ampuh. Pembaikan Outlook alat, seperti DataNumen Outlook Repair.

Pengenalan Pengarang:

Shirley Zhang adalah pakar pemulihan data di DataNumen, Inc., yang merupakan pemimpin dunia dalam teknologi pemulihan data, termasuk pemulihan mdf dan produk perisian pembaikan prospek. Untuk maklumat lebih lanjut, lawati www.datanumen.com

Kongsi Sekarang:

Ruangan komen telah ditutup.