Mengenal Fungsi IF Excel

Fungsi IF pada Microsoft Excel merupakan salah satu fungsi yang simpel namun sangat serbaguna. Fungsi IF juga merupakan salah satu Worksheet Functions yang paling sering digunakan.

Deskripsi

Fungsi IF pada Microsoft Excel masuk dalam kategori Logical Functions. Sebagai bagian dari fungsi logika, fungsi IF hanya menghasilkan satu Value yang telah kita tentukan sebelumnya untuk hasil TRUE, atau nilai lain apabila hasil evaluasi dari Argument menghasilkan FALSE.

Sintaksis

Sintaksis dari fungsi IF terdiri dari berbagai Argument berikut ini:

IF(logical_test, [value_if_true], [value_if_false])
  • logical_test Argument ini merupakan setiap Value atau Expression yang dapat dievaluasi menjadi TRUE atau FALSE. Expression adalah suatu kombinasi yang terdiri dari suatu Value dan simbol tertentu yang menghasilkan suatu value baru. Sebagai contoh, A2=90 adalah suatu Logical Expression.
  • value_if_true Argument ini merupakan Value yang ingin ditampilkan apabila hasil evaluasi dari Argument adalah TRUE. Pada Argument ini dapat juga berupa Expression yang menghasilkan suatu Value tertentu sesuai dengan yang diinginkan. Fungsi IF Bersarang adalah salah satu contohnya.
  • value_if_false Argument ini merupakan Value yang ingin ditampilkan apabila hasil evaluasi dari Argument adalah FALSE. Pada Argument ini dapat juga berupa Expression yang menghasilkan suatu Value tertentu sesuai dengan yang diinginkan. Fungsi IF Bersarang adalah salah satu contohnya.

NB: Pemisah antar Arguments dapat juga berupa tanda ";" (titik koma), ini tergantung pada setting list separator yang ada pada komputer kita (lihat pada Control Panel bagian Regional Setting).

Contoh Penggunaan

Contoh1:

Misal cell A1 akan dibandingkan dengan cell B1, hasil evaluasi perbandingan diletakkan pada cell  C1, diinginkan hasil “Sama” apabila cell A1 sama dengan cell B1 dan apabila berbeda maka diinginkan hasil “Beda”. Formula untuk tujuan tersebut adalah sebagai berikut:

=IF(A1=B1,"Sama","Beda")

Contoh2:

Pada contoh1, argument value_if_true dan value_if_false adalah sebuah Value, pada contoh2 kali ini menggunaan Expression pada argument value_if_true.

=IF(A1=A2,A1+A2,"")

Formula di atas diinginkan apabila value dari cell A1 sama dengan value dari cell A2 maka jumlahkan keduanya, apabila berbeda maka hasilkan Blank.

Contoh3:

Pada contoh1 dan contoh2 kita sudah belajar penggunaan fungsi IF pada tingkatan kasus yang sederhana. Sampai disini diharapkan sobat sudah bisa membedakan apa yang dimaksud dengan Value dan Expression pada suatu Argument.

Pada Contoh3 ini akan dicontohkan penggunaan Fungsi IF yang bersarang pada suatu Fungsi IF, istilah lainnya adalah Fungsi IF Bersarang atau Nested IF.

Diketahui daftar panduan konversi suatu nilai angka menjadi nilai mutu adalah sebagai berikut: 

Nilai Angka Nilai Mutu
Lebih dari 79 A
70 s.d. 79 B
60 s.d. 69 C
50 s.d. 59 D
Kurang dari 50 E

Misal nilai angka berada pada cell A2, untuk mengkonversi nilai angka ke nilai mutu, pada contoh ini kita gunakan formula berikut:

=IF(A2>79,"A",IF(A2>69,"B",IF(A2>59,"C",IF(A2>49,"D","E"))))

Perhatikan baik-baik penyusunan dan hasil dari formula tersebut. Jika Argument logical_test yang pertama menghasilkan TRUE, maka evaluasi dilanjutkan ke argument value_if_true, jika logical_test menghasilkan FALSE, evaluasi berlanjut ke statement IF berikutnya, dan bergitu seterusnya sampai dengan statement IF terakhir. Yang datang lebih awal adalah yang diutamakan oleh excel.

Membuat Fungsi Terbilang pada Excel

Dalam pembuatan dokumen bisnis seperti Invoice, Kuitansi, maupun Surat Setoran Pajak (SSP), dibutuhkan penerjemahan nominal angka transaksi yang tertera ke dalam kata-kata. Dokumen yang dibuat menggunakan Excel dapat diotomasikan penerjemahannya menggunakan macro sehingga dapat menghemat waktu.

Otomasi formula terbilang dapat dilakukan dengan formula excel (tanpa macro) maupun membuat sendiri fungsi terbilang dengan bantuan VBA. Pada posting kali ini saya akan membahas khusus formula terbilang excel menggunakan VBA Code.

Sudah banyak fungsi terbilang excel (rupiah) yang menggunakan vba code yang tersebar di internet, dengan berbagai algoritma dan teknik pemrogramannya masing-masing. Berikut ini ikut meramaikannya, dengan algoritma dan teknik yang berbeda tentunya (diharapkan dapat menambah pengetahuan teknik pemrograman bagi pembaca yang baru mengenal VBA) , silakan:

Option Explicit
Dim st, abc As String
Function terbilang(x As Range) As String
    'infomattic.com
    Dim mil As Integer, jeti As Integer, rr As Long, pp As String, dt As Boolean
    pp = Format(Fix(x), "000000000000")
    dt = (TypeName(x.Value) = "String")
    If dt Then
        terbilang = "#VALUE!"
    Else
        mil = Mid(pp, 1, 3): jeti = Mid(pp, 4, 3): rr = Mid(pp, 7, 6)
        terbilang = WorksheetFunction.Trim(eja(mil) & IIf(mil, " milyar ", "") & _
                    eja(jeti) & IIf(jeti, " juta ", "") & eja(rr))
        If Len(pp) > 12 Then terbilang = "#N/A"
    End If
End Function
Function eja(ByVal num As Single) As String
    Dim angka As Single
    angka = Mid(Format(Fix(Abs(num)), "000000000000"), 7, 6)
    st = Array(" ", "satu ", "dua ", "tiga ", "empat ", "lima ", "enam ", _
         "tujuh ", "delapan ", "sembilan ", "sepuluh ", "sebelas ", _
         "dua belas ", "tiga belas ", "empat belas ", "lima belas ", _
         "enam belas ", "tujuh belas ", "delapan belas ", "sembilan belas ")
    abc = vbNullString
    eji angka, 10 ^ 6, 10 ^ 5, "ratus ", 1
    eji angka, 10 ^ 5, 1000, "ribu ", 2
    eji angka, 10 ^ 3, 100, "ratus ", 3
    eji angka, 100, 1, " ", 4
    eja = abc
End Function
Sub eji(angka As Single, n As Long, t As Long, tp As String, k As Byte)
    Dim bb As Byte
    bb = Fix((angka Mod n) / t)
    If bb < 20 Then         If (angka >= 10 ^ 5) * (k = 2) + (k = 4) Then
            abc = abc & st(bb) & IIf(((angka Mod 10 ^ 5) < 1000), tp, "")
        Else
            abc = abc & IIf(bb = 1, "se", st(bb))
        End If
    Else
        abc = abc & st(Fix(bb / 10)) & "puluh " & st(bb Mod 10)
    End If
    If bb Then abc = abc & tp
End Sub

Bilangan Pecahan?

Dan apabila angka yang ingin diterjemahkan termasuk di dalamnya adalah bilangan pecahan maka sobat perlu menambahkan fungsi terbilang koma berikut ini:

Function koma(z As Range) As String
    Dim w As Byte, tx As String, i As Integer, xyz As String, sk, tn As Boolean
    sk = Array("nol ", "satu ", "dua ", "tiga ", "empat ", "lima ", "enam ", _
               "tujuh ", "delapan ", "sembilan ")
    tn = (TypeName(z.Value) = "String")
    If Len(Fix(z.Value)) = Len((z.Value)) Then
        koma = ""
    Else
        w = Len(Fix(z.Value)) + 1
        tx = Mid(CStr(z.Value), w + 1, Len(CStr(z.Value)) - w)
        If tn Then
            koma = "#VALUE!"
        Else
            For i = 1 To WorksheetFunction.Min(3, Len(tx))
                xyz = xyz & sk(Mid(tx, i, 1))
            Next
            koma = IIf(tn, "#VALUE!", " koma ") & WorksheetFunction.Trim(xyz)
        End If
    End If
End Function

Sebelum menggunakannya, lakukan langkah-langkah berikut ini:

1. Masuk ke Visual Basic Editor (Tekan Alt+F11)
2. Insert module (Insert > Module)
3. Copy Paste VBA code tersebut
4. Keluar dari VBE (Tekan Alt+Q)

Penggunaan:
1. Apabila hanya menginginkan terjemahan bilangan bulatnya saja.
=terbilang(A1)
2. Apabila dikehendaki ingin menambahkan mata uang.
=terbilang(A1)&" rupiah"
3. Apabila dikehendaki juga terjemahan atas bilangan desimalnya, dapat ditambahkan UDF koma.
=terbilang(A1)&koma(A1)&" rupiah"
4. Mengkombinasikan dengan fungsi UPPER atau PROPER, misal:
=UPPER(terbilang(A1)&koma(A1)&" rupiah") atau
=PROPPER(terbilang(A1)&koma(A1)&" rupiah")

Limitasi:
1. Batas penerjemahan untuk angka desimal adalah 3 angka dibelakang koma
2. Angka maksimal adalah 999.999.999.999,999

Atau anda dapat mengunduhnya yang sudah dalam format file Excel Add-In Terbilang di sini

Unduh Membuat Fungsi Terbilang pada Excel

Memore, Game Excel untuk Melatih Short-Term Memory

brainmemory 248x300 Memore, Game Excel untuk Melatih Short Term MemoryMenstimulasi otak dengan hal-hal baru adalah salah satu cara untuk menjaga performa daya ingat agar tetap bagus. Bermain game adalah salah satu cara yang baik untuk menstimulasi otak.

Sudah banyak game memory yang beredar. Sebagai fans Excel, saya mencoba membuat sebuah aplikasi game untuk melatih daya ingat dengan Excel. Dengan memanfaatkan VBA Excel jadilah sebuah game yang saya beri nama Memore.

Memore adalah game excel yang dimaksudkan untuk melatih dan meningkatkan daya ingat jangka pendek. Continue reading

Belajar Excel Secara Efektif

Microsoft Excel adalah aplikasi spreadsheet dengan fitur terdepan saat ini. Kata “Excel” menurut the Cambridge Advanced Learner’s Dictionary mempunyai definisi “to do something better than you usually do”. Hampir selalu ada metode yang lebih baik untuk melakukan berbagai hal dalam Excel. Yakinilah, nantinya anda akan berterimakasih dengan keyakinan anda ini.

Dunia Excel adalah dunia yang sangat luas, melebihi apa yang kita tahu dan bayangkan, anda percaya?. Semakin anda mempelajarinya, semakin anda merasa bahwa apa yang anda tahu hanyalah sedikit.

Setiap hal baru yang anda pelajari akan menuntun anda kepada hal-hal baru yang lainnya, begitu dan begitu seterusnya. Semakin dikuak semakin bertambah lagi yang belum terkuak, untuk dicari dan ditemukan. Bagi mereka yang berani mengeksplorasi dan mempelajarinya lebih lanjut, akan segera merasakan hal tersebut.

Jadi, cara belajar dan eksplorasi haruslah Efektif!. Sesuaikan dengan apa yang sebenarnya anda perlukan.  Continue reading