Outlook'ta Bir Tıklamayla Epostaları Arşivlemek

Microsoft Outlook, pek hoşlanmadığım halde kullanmak zorunda olduğum bir araç. Bu nedenle Outlook’u her fırsatta kendi kullanım alışkanlıklarıma uydurmaya çalışıyorum. Gelen kutusu dolduğu için eski epostaları silmek zorunda kalmak herkes için sinir bozucu bir durum olsa gerek. Bunu çözmek için ilk kez Gmail sayesinde tanıdığım arşivleme mantığını Outlook’ta da uygulamaya çalışıyorum. Bu postta bunu nasıl gerçekleştirdiğimi anlatmaya çalışacağım.

Konunun ayrıntılarına geçmeden şunu belirtmekte yarar var: arşivlemenin yararlı bir işlem olabilmesinin püf noktası söz konusu arşiv içinde aradığınızı kolayca bulmanıza yardımcı olacak bir arama mekanizmasının olması. Outlook 2007’nin arama fonksiyonu yeterince başarılı olduğu için başka bir araca gerek yok, lâkin daha önceki sürümlerini kullananlar Lookout’a bir göz atmak isteyebilirler.

İşe, arşivleme mantığını özetleyerek başlayalım. Önce gün içinde aldığımız epostaları üçe ayıralım: 1. Yapmakta olduğumuz iş için önem arzeden güncel epostalar 2. Okunduğu anda bütün değerini yitiren epostalar 3. Diğerleri. İkinci kategoriye giren epostalar için yapılabilecek en iyi şey hemen silmektir. Aşağıdaki eposta bu kategori için güzel bir örnek.



Birinci kategoridekiler, genellikle gün içinde ihtiyaç duyduğumuz, elimizin altında bulunmasında yararlı olabilecek epostalardır. O nedenle bunları, hiç olmazsa bir süre daha gelen kutumuzda (ya da kendi oluşturduğumuz dizin yapısına göre ilgili yerde tutmakta) yarar vardır. Üçüncü kategori, yani “Diğerleri” arşivlemenin hemen uygulanabileceği epostalardan oluşur. Günlük işimizle doğrudan bağlantılı olmayan, ama gelecekte ihtiyaç duyma ihtimalimiz olan epostalar.

Ben, epostaları yıllara göre arşivliyorum. Böylelikle orta vadede arama yaparken aradığımı daha kolay buluyorum. Ama tabii siz rahat edeceğiniz başka bir yöntem de kullanabilirsiniz. Aşağıdaki ekran çıktısı benim Outlook gelen kutularımın nasıl düzenlendiğini gösteriyor.



Arşiv için, Gelen kutusunun yer aldığından başka bir veri dosyası kullanıyorum. Yukarıdaki resimde Past adıyla görünen ve altında yıllara göre sınıflanmış klasörlerin bulunduğu veri dosyası bu. Yukarıda “Diğerleri” diye sınıflandırdığım epostaların tamamını ve “Önemli” olarak sınıflandırdığım (kategori 1) epostaların bazılarını (günlük olarak kullanacağım şeyler değilse) bu klasörlere aktarıyorum. Bu aktarımı elle yapmak da mümkün (Sürükle & Bırak, Drag & Drop), ama bu postta bunu bir Macro’yla nasıl yapabileceğimizi göreceğiz.

Tools > Macro > Macros (Araçlar > Macro > Macrolar) adımından Macro penceresini açın. Gelecek pencerede oluşturacağınız Macro için bir isim seçin (bkz. aşağıdaki ekran çıktısında benim seçtiğim isim Archive_and_Mark_as_Read).

Macro’nun ismini girdikten sonra “Create” butonuna bastığınızda Visual Basic editörü açılacaktır. EK1’de paylaştığım kodu kopyalayıp editörde açılan pencereye yapıştırın. Kodu kopyalarken dikkat etmeniz gereken şeyler var: Bu Macro, seçtiğiniz mesajı Past’ın altındaki 2010 klasörüne taşır. Eğer sizin klasör isimleriniz farklıysa Macro’daki ilgili yerleri de buna göre değiştirin (yıllar ilerledikçe Macro’yu buna uygun olarak güncellemeniz de gerekecek).

Şimdi değişiklikleri kaydedip Visual Basic editörünü kapatabilirsiniz. Arşivleme işini yapacak Macromuz hazır. Sırada bu Macro’yu bir butona atayıp arşivleme işini tek bir butonla yapmak var...

Araç çubuklarından birine sağ tıklayarak açılan menüde Cutomize (Özelleştir) seçeneğini tıklayın.


Açılan pencerede Commands sekmesindeki kategoriler arasında Macros’u seçtiğinizde biraz önce oluşturmuş olduğunuz Macro görünecektir. Macro’nun adını sürükleyip araç çubuğunun üstüne bırakarak Macro’yu çağıracak butonu oluşturabilirsiniz.


Yeni oluşturduğunuz butonun üstüne sağ tıklayarak üstündeki metni değiştirebilirsiniz. Bunun için Name: etiketinin karşısındaki kutuya istediğiniz metni girebilirsiniz. Aşağıdaki ekran çıktısında butonun üstündeki metin “Archive” olarak değiştirilmiş görünüyor.


Artık butonumuz kullanıma hazır. Gelen kutunuzdaki işe epostalar üzerinde ilk denemelerinizi yapabilirsiniz. Epostalarınızı isterseniz tek tek isterseniz topluca arşivleyebilirsiniz.

Hamiş:
Bu Macro’yu çalıştırdıktan sonra bilgisayarınızı kilitleyip yeniden açtığınızda Visual Basic editörünün açılmış olduğunu görebilirsiniz. Bu, Microsoft’un bildiği ve kabul ettiği ama şimdiye dek herhangi bir çözüm üretmediği hatalardan bir tanesi (bkz. The Visual Basic Editor may open without menus or toolbars in Outlook 2007 or in Outlook 2003). Böyle bir durumda Visual Basic editörünü kapatıp işinize kaldığınız yerden devam edebilirsiniz.

EK1:

Kodu kopyaladıktan sonra aşağıda kırmızıyla işaretlenmiş olan klasör isimlerini (”Past” ve “2010”) kendi ayarlarınıza uygun olacak biçimde değiştirmeyi unutmayın.


Sub Archive_and_Mark_as_Read()

On Error Resume Next

Dim oApp As Outlook.Application
Dim objFolder As Outlook.MAPIFolder
Dim oEmail As Outlook.MailItem

Set oApp = New Outlook.Application
Set objFolder = oApp.GetNamespace("MAPI").Folders("Past").Folders("2010")

If objFolder Is Nothing Then
   MsgBox "This folder doesn't exist!", vbOKOnly + vbExclamation, "INVALID FOLDER"
End If

If Application.ActiveExplorer.Selection.Count = 0 Then
   'Require that this procedure be called only when a message is selected
Exit Sub
End If

For Each objItem In Application.ActiveExplorer.Selection
   If objFolder.DefaultItemType = olMailItem Then
       If objItem.Class = olMail Then
           objItem.UnRead = False
           objItem.Move objFolder
       End If
   End If
Next

Set objItem = Nothing
Set objFolder = Nothing
Set objInbox = Nothing
Set objNS = Nothing

End Sub