Outlook’ta Klasör Arama – Outlook Kayıp Klasör Bulma
Çalıştığım firmada çok fazla e-posta sirkülasyonu olduğundan kullanıcılar sık sık yanlışlıkla da olsa Outlook üzerinde klasörlerini kaybetmekte. Haliyle bizde normal arama kutusunda arama yaparak bu klasörleri bulamamaktaydık. Bunun için e-posta arama değil de daha farklı bir işlem Outlook’ta Klasör Arama yapmak gerekiyor. Bu işlem içinde Outlook içerisinde ufak bir makro hazırlamamız gerekiyor.
Yapılacak ilk işlem Outlook açık iken Alt+F11 tuşlarına basarak Microsoft Visual Basic for Applications ‘u açıyoruz. Gerekli olan makroyu bu alana yazacağız.
Açılan pencerenin sol tarafında bulunan Project1 kök dizinine çift tıklıyoruz. Ardından altında bulunan Microsoft Outlook Objects çift dizinine tıklıyoruz. ThisOutlookSession satırı gelecek.
ThisOutlookSession satırına çift tıklayarak Kod penceresini açacağız ve aşağıdaki kodu buraya yazacağız
Private m_Folder As Outlook.MAPIFolder Private m_Find As String Private m_Wildcard As Boolean Public Sub FindFolder() Dim Name$ Dim Folders As Outlook.Folders Set m_Folder = Nothing m_Find = "" m_Wildcard = False Name = InputBox("Find Name:", "Search Folder") If Len(Trim$(Name)) = 0 Then Exit Sub m_Find = Name m_Find = LCase$(m_Find) m_Find = Replace(m_Find, "%", "*") m_Wildcard = (InStr(m_Find, "*")) Set Folders = Application.Session.Folders LoopFolders Folders If Not m_Folder Is Nothing Then If MsgBox("Activate Folder: " & vbCrLf & m_Folder.FolderPath, vbQuestion Or vbYesNo) = vbYes Then Set Application.ActiveExplorer.CurrentFolder = m_Folder End If Else MsgBox "Not Found", vbInformation End If End Sub Private Sub LoopFolders(Folders As Outlook.Folders) Dim F As Outlook.MAPIFolder Dim Found As Boolean For Each F In Folders If m_Wildcard Then Found = (LCase$(F.Name) Like m_Find) Else Found = (LCase$(F.Name) = m_Find) End If If Found Then Set m_Folder = F Exit For Else LoopFolders F.Folders If Not m_Folder Is Nothing Then Exit For End If Next End Sub
Yukarıda ki kodu yapıştırdıktan sonra CTRL+S veya File -> Save VbaProject yaparak işlemlerimizi kayıt altına alıyoruz. Artık Outlook’ta Klasör Arama yapabiliriz.
Bunun için mevcut pencereyi kapatıp Outlook ana ekranına geri dönüyoruz. Ana ekranda Outlook’ta Klasör Arama yapabilmek için ALT + F8 yaparak makro penceremizi açıyoruz. Açılan pencerede ThisOutlookSession.FindFolder isimli makroyu seçiyoruz ve Run butonuna basıyoruz. (Bura da hata alırsanız Outlook üzerinde makroları etkileştirmeniz gerekmekte. Yazının sonunda ilgili ayarları görebilirsiniz.)
Karşınıza klasör arama kutucuğu gelecek. Buraya aradığımız klasörün ismini yazıyor (Ben Konica klasörünü aratacağım) ve Enter tuşuna basıyoruz.
Kısa bir süre sonra aradığımız klasörün (var ise) nerede olduğunu gösteren bir uyarı penceresi gelecek. Gelen uyarı ekranında Yes tuşuna basarsanız aradığınız klasör direk açılacaktır.
Outlook’ta Klasör Arama işlemi bu kadar basit. Kodlar üzerinde gerekli yerleri değiştirerek Türkçe yapabilirsiniz. Ben aldığım kaynaktan direk paylaştım.
Outlook’ta Klasör Arama için Makroları Etkinleştirme
Son olarak makroyu çalıştırdığınızda hata aldıysanız Outlook üzerinde makroları etkin hala getirmeniz gerekmekte. Bunun için File -> Options -> Trust Center sekmesine tıklayın ve aradından Trust Center Settings düğmesine tıklayın.
Bu ekrandan solda bulunan Macro Settings sekmesine tıklayın. Açılan Pencerede bütün macroları çalıştır ve yüklü eklentilere makro güvenliği uygulama seçeneklerini seçip OK butonuna basın. Ardından Outlook’u yeniden başlatarak makrolarınızı çalıştırabilirsiniz.
Önemli Hatırlatma: İşleminizi bitirdikten sonra herhangi bir açık vermemek için bu ayarlarınızı geri alın
Pek adetim değildir ama yazmadan edemedim. Çok faydalı bir makroydu. Ellerinize sağlık 🙂