Refreshing dan Reuni

Tiap hari kok ya bosen juga melototi kode-kode Java dicampur bumbu-bumbu Oracle. Apalagi kalau ketemu dengan HTML. Wueh… mualess (hah..? Galih yang meledak-ledak itu ternyata bisa males juga to?) Hehehe… 😀 lagi nggak mood buat itu, jadi maka dari itu… aku mesti cari bahan untuk refreshing sejenak.

Pas baca-baca email dari mailing list kantor yang ndak jelas itu, kok hati punya krenteg untuk bereuni dengan Visual Basic. Wah Yes! Punya bahan refreshing nih. Kepenginannya sederhana, pengen ngitung berapa email yang sudah dikirim masing-masing anggota. Si A berapa buah, si B berapa ratus buah, dan seterusnya. Hmm… gimana caranya yah, secara gw dah lama banget ninggalin Visual Basic, apalagi VBA, Visual Basic for Application.

Karena aplikasi yang kugunakan adalah Microsoft Outlook, kita bisa bikin macro outlook yang dapat di-run dan di-edit. Bisa kan bikinnya? [Tools] [Macro][Macros..] Di dialog yang muncul ketikkan nama macro dan tekan tombol [Create]. Kamu akan dibukakan sebuah VBA editor yang… ngg.. bagiku udah ketinggalan jaman kalau dibandingkan dengan IDE-IDE Java, hehehe…

Let’s jump to the code… :p Aku cuma akan menerangkan garis-garis besarnya aja. Pada intinya, langkah awal yang kita tuliskan di code adalah…

Dim folder As Outlook.MAPIFolder, inbox As Outlook.MAPIFolder
Dim namespace As Outlook.namespace, item As Outlook.MailItem

Set namespace = Application.GetNamespace(“MAPI”)
Set inbox = namespace.GetDefaultFolder(olFolderInbox)

Set folder = inbox.Folders(“Milis Ndak Jelas Blas”)

Langkah ini digunakan untuk mendapatkan pointer subfolder di dalam folder Inbox dalam account email kita. Subfolder ini bernama Milis Ndak Jelas Blas. Dari pointer yang kunamakan folder ini, kita bisa memanipulasi setiap email-email di dalam folder itu. Nah, untuk mendapatkan setiap email, kita bisa ambil dengan,

folder.Items untuk dapat array yang berisi semua email, atau folder.Items(x) untuk mendapatkan email tunggal pada indeks ke-x. Untuk mendapatkan jumlah seluruh jumlah email dalam folder itu (kali-kali aja untuk kebutuhan looping seluruh email), menggunakan perintah folder.Items.Count.

Setiap email tunggal disimpan dalam objek yang namanya Outlook.MailItem. Objek ini memiliki properti dan method lengkap yang berhubungan dengan email tersebut, sebut saja To, SenderName, Bcc, Cc, Body. Sedangkan method-nya yang paling penting adalah Send, untuk mengirim email itu sendiri.

Oke, dari informasi ini sudah cukup untuk bermain-main dengan suatu folder dalam Microsoft Outlook kan? Selamat bermain-main dengan Macro 🙂

Berikut ini adalah resource yang mungkin bisa membantu:
Script Macro untuk memindahkan suatu email ke folder tertentu
Objek Items yang didapatkan dari suatu folder (MSDN Resource)
Objek Folders yang didapatkan dari namespace (MSDN Resource)
Objek MailItem yang merepresentasikan satu email tunggal (MSDN Resource)

Have fun 🙂

By Galih Satriaji

Bookaholic, Workaholic. Chubby. That's me!

5 comments

  1. Dasar geek!
    Kirain apaan…
    Reuni kok sama VB…
    Refeshing kok ngoding…

    Tapi, setiap orang punya cara refreshing sendiri kan.
    alo aku mending jalan2.

Leave a comment

Your email address will not be published. Required fields are marked *