Pengikut

RSS

FUNGSI LOGIKA

Fungsi Logical (Secara Logika)
Manusia terlahir dianugerahi oleh logika plus perasaan, namun entah kenapa sekarang kita sering menyerahkan urusan logika pada komputer yang tidak memiliki perasaan sama sekali. Mungkin karena kalau kita jujur ternyata komputer lebih tegas dalam berlogika dan tentu saja lebih cepat. Namun tentu saja komputer tetap benda mati yang tidak bisa melakukan apa-apa tanpa kita suruh untuk mengerjakan sesuatu. Baiklah, sekarang kita suruh komputer kita untuk berlogika sesuai keinginan kita. Bahasan kita adalah beragam fungsi logika yang digunakan dalam datasheet Excel. Tentu saja kita tidak mungkin lepas dari suatu pernyataan "Jika ... maka ... selain itu ..." yang jika dipindahkan ke bahasa program menjadi "IF ... THEN ... ELSE". Fungsi yang paling dominan adalah fungsi IF ditambah fungsi lain seperti AND, OR, NOT, FALSE, TRUE dan mungkin IFERROR.
Sebenarnya pembahasan kali ini cukup simple dan tidak begitu njlimet, karena fungsi-fungsi yang akan digunakan cenderung mudah dipahami. Tapi mungkin karena keterbatasan pola pikir kita untuk berlogika maka jangan heran jika nanti anda akan sedikit mengerutkan dahi :). Sekarang kita bahas fungsi (mungkin saya sebenarnya lebih suka jika dinyatakan sebagai 'kondisi') termudah yaitu TRUE dan FALSE
TRUE dan FALSE
Pada dasarnya fungsi TRUE dan FALSE akan berguna untuk memunculkan teks TRUE dan FALSE pada sel tertentu, meskipun dengan mudah anda dapat langsung mengetikkan kata TRUE dan otomatis dianggap sebagai suatu kondisi logis. Contoh penggunaan fungsi TRUE adalah =TRUE(). Katanya sih fungsi ini hanya untuk menjaga kompabilitas dengan datasheet lain, jadi kalau dikatakan tidak begitu penting mungkin ada benarnya juga. Saya pribadi lebih senang menggunakan TRUE dan FALSE sebagai suatu kondisi logis suatu perhitungan. Misalnya:
=IF(1+1=2;"Saya Keren";"Saya Jelek")
Sepertinya sampai kiamatpun fungsi diatas akan menghasilkan teks "Saya Keren" kecuali ada hukum Matematika lain yang mengatakan bahwa 1+1 tidak sama dengan 2 :). Coba anda ketikkan pada sembarang sel formula =1+1=2, maka sel tersebut akan berisi TRUE. Seperti yang sudah saya katakan bahwa fungsi TRUE dan FALSE akan menghasilkan teks TRUE dan FALSE yang dapat kita potong-potong dengan fungsi LEFT misalnya. Suatu formula =LEFT(1+1=2;3) akan menghasilkan teks "TRU", suatu hal yang cukup aneh bagi saya karena kebiasaan saya bahwa hasil formula yang bertipe boolean seperti TRUE dan FALSE tidak dapat dipotong-potong seperti data bertipe string.
AND dan OR
Sebagian besar dari kita mungkin sudah mengenal logika AND dan OR karena sewaktu sekolah dulu kita sudah dikenalkan tentang operator "dan" dan "atau". Fungsi AND dan OR akan melakukan suatu perhitungan logis satu atau lebih(untuk Office 2007 hingga 255) kondisi. Parameter yang dimasukkan dalam fungsi ini harus berupa suatu kondisi logis, jika berupa teks atau string kosong maka akan dicuekin. Jika parameter yang dimasukkan tidak memiliki satu kondisi logis-pun maka fungsi akan menghasilkan #VALUE!. Sekedar mengingatkan, fungsi AND akan bernilai TRUE jika semua kondisi terpenuhi sedangkan fungsi OR akan bernilai TRUE jika salah satu saja kondisi terpenuhi. Berikut semacam perbedaannya:
================Fungsi AND================
Kondisi 1 Kondisi 2 Hasil
TRUE TRUE TRUE
TRUE FALSE FALSE
FALSE TRUE FALSE
FALSE FALSE FALSE

================Fungsi OR================
Kondisi 1 Kondisi 2 Hasil
TRUE TRUE TRUE
TRUE FALSE TRUE
FALSE TRUE TRUE
FALSE FALSE FALSE
Jika anda memiliki lebih dari dua kondisi maka hukum diatas akan berlaku sama. Misalkan ada empat kondisi yaitu: TRUE, TRUE, FALSE, FALSE maka akan bernilai TRUE jika menggunakan fungsi OR tapi bernilai FALSE jika menggunakan fungsi AND. Gampangnya fungsi AND akan bernilai TRUE jika semua parameter bernilai TRUE, tapi fungsi OR akan bernilai TRUE jika salah satu saja parameter bernilai TRUE. Mungkin anda ingin membuat formula bertingkat dengan memadukan dua fungsi ini. Misalnya:
=AND(1+1=1;AND(FALSE);OR(2+2=5;FALSE))
Fungsi NOT dan IFERROR
Sekarang kita bahas fungsi selanjutnya yaitu NOT. Fungsi ini bersifat menegasikan atau membalik suatu kondisi. Misalkan ada sell bernilai TRUE maka dengan fungsi NOT maka akan dibalik menjadi FALSE. Efek fungsi ini mungkin akan lebih terasa jika dipadukan dengan fungsi IF dan IS seperti ISBLANK, ISNA, ISNUMBER, ISTEXT, dsb. Oh iya, ada satu hal yang ingin saya terangkan yaitu tentang operator perbandingan dalam Excel. Untuk membandingkan dua nilai anda dapat menggunakan operator seperti berikut ini, (yang akan menghasilkan nilai TRUE dan FALSE)
Operator Arti Contoh
= (tanda sama dengan) sama dengan A1=A2
> (tanda lebih besar) lebih besar dari A1>3
< (tanda lebih kecil) lebih kecil dari 5>= (tanda lebih besar sama dengan) lebih besar sama dengan 10>=9
<= (tanda lebih kecil sama dengan) lebih kecil sama dengan A1<=4
<> (tanda tidak sama dengan) tidak sama dengan A2<>B2

Sekarang kita mempunyai contoh kasus seperti gambar diatas. Pada kolom pertama terdapat mata kuliah yang sudah ditempuh kemudian kolom dua dan tiga berisi nilai mata kuliah yang bersangkutan. Khusus kolom 'Nilai 2' hanya diisi jika telah mengulang mata kuliah tersebut. Kolom 'Nilai Akhir' adalah nilai tertinggi dari 'Nilai 1' dan 'Nilai 2', kemudian kolom 'Keterangan' akan kita isi dengan teks "Mengulang" atau "Tidak mengulang" tergantung pada nilai akhir yang diperoleh. Saya memang membatasi kolom nilai hanya dua kolom karena menurut saya sudah sepantasnya kita tidak mengulang mata kuliah yang sama berkali-kali :). Jika anda menghendaki, anda dapat menambahkan kolom 'Nilai 3' dan seterusnya yang tentu saja harus mengubah formula yang akan kita bahas nanti.
Formula pada kolom 'Nilai Akhir' cenderung mudah, tapi terus terang saya sempat terjebak dengan formula yang saya buat. Jika anda penasaran mengapa saya katakan saya terjebak, saya berikan formulanya lebih dahulu baru kita bahas kemudian. Formula di sell E3, lalu tinggal anda copykan kebawah.
=IF(NOT(ISBLANK(D3));IF(D3 -------2------- -------1------ -2
Sebenarnya fungsi utamanya ada pada bagian yang saya beri tanda 1. Berhubung sekalian kita melakukan cek apakah mata kuliah tersebut pernah diulang atau tidak maka ditambahkan fungsi yang bertanda 2. Saya katakan terjebak karena kebiasaan dulu waktu kuliah huruf "A" pasti lebih tinggi nilainya dari huruf "B", padahal Excel tidak mengenal sistem penilaian tersebut, baginya huruf "A" lebih dulu dari "B" sehingga nilainya lebih rendah daripada "B". Sehingga saya menggunakan tanda lebih kecil (<) untuk mendapatkan nilai tertinggi antara sel D3 dan C3. Seperti anda lihat, saya menggunakan fungsi NOT bersamaan dengan fungsi ISBLANK, karena jika sel D3 masih kosong formula diatas akan mengambil data di sel C3 tapi jika sel D3 tidak kosong maka formula akan mencari nilai tertinggi eh... terendah antara dua sel tersebut.
Kita bahas kolom 'Keterangan'. Formula di kolom ini agak rumit dan mungkin sulit dipahami, jujur saya masih agak ragu dengan formula yang saya buat. Tapi Insyaallah benar kok :). Ini formula untuk sel F3, lalu tinggal anda copykan kebawahnya.
=IF(NOT(OR(E3="D";E3="E";E3="F"));"Tidak Mengulang";"Mengulang")
Sebenarnya fungsi NOT pada formula diatas bisa dihilangkan, tinggal anda mengganti bagian TRUE dan FALSE pada fungsi IF induknya. Sepertinya yang sudah kita bahas, fungsi OR akan bernilai TRUE jika salah satu saja parameternya bernilai TRUE. Pada formula diatas (pada sel F3), fungsi OR seharusnya bernilai FALSE karena 'Nilai Akhir' di sel E3 adalah "A", tapi saya balik kondisinya menjadi TRUE dengan fungsi NOT sehingga menghasilkan teks "Tidak Mengulang" (kondisi TRUE pada fungsi IF induknya). Jika anda menghilangkan fungsi NOT maka anda harus membalik kondisi TRUE dan FALSE di fungsi IF induknya yaitu teks "Tidak Mengulang" dan "Mengulang"

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS