Selasa, 31 Januari 2012

Langkah membuat Mega Formula Terbilang untuk Raport atau SKHU Tanpa Macro

Setelah agak lama tidak posting, karena harus istirahat total, kali ini ExcelHeru akan membahas tentang cara menerjemahkan angka ke huruf yang biasa dipakai di penulisan Raport dan SKHU.
Kalau kita cari di Google dengan mengetikkan kata kunci "Terbilang", maka akan banyak didapatkan rumus Terbilang, tapi yang pakai Macro. Nah, di tulisan ini akan dibeber Fungsi Terbilang yang tanpa Macro.


Rumus yang dibahas di sini bersumber Maha Guru Excel Indonesia, Mbak Siti-Vi dan Mbak Hapsari di Milis Belajar-Excel#14674. Sehingga rumus ini bukan buatan saya, saya hanya tinggal menggunakan saja. Hehehehe.


Misalnya angka ada di sel C5, maka rumusnya adalah:
=IF(--INT(C5)=0,"Nol ",IF(--(LEFT(TEXT(INT(C5),"000")))=1,"Seratus ",IF(--(LEFT(TEXT(INT(C5),"000")))>1,INDEX(N,--(LEFT(TEXT(INT(C5),"000"))))&"Ratus ","")))&IF(--(MID(TEXT(INT(C5),"000"),2,1))=0,"",IF(--(MID(TEXT(INT(C5),"000"),2,1))=1,CHOOSE((--(RIGHT(TEXT(INT(C5),"0")))=0)*1+((--(RIGHT(TEXT(INT(C5),"0")))=1)*2)+((--(RIGHT(TEXT(INT(C5),"0")))>1)*3),"Sepuluh ","Sebelas ",INDEX(N,--(RIGHT(TEXT(INT(C5),"0"))))&"Belas "),IF(--(MID(TEXT(INT(C5),"000"),2,1))>1,INDEX(N,--(MID(TEXT(INT(C5),"000"),2,1)))&"Puluh ")))&IF(OR(--(MID(TEXT(INT(C5),"000"),2,1))=1,--(RIGHT(TEXT(INT(C5),"0")))=0),"",INDEX(N,--(RIGHT(TEXT(INT(C5),"0")))))&"Koma "&IF(--LEFT(TEXT(MOD(C5,1)*100,"00"))=0,"Nol ",INDEX(N,LEFT(TEXT(MOD(C5,1)*100,"00"))))&IF(--RIGHT(TEXT(MOD(C5,1)*100,"00"))=0,"Nol ",INDEX(N,RIGHT(TEXT(MOD(C5,1)*100,"00"))))


ckckckckckckcck.....! ehm rumus yang sangat sangat panjang (Mega Formula). Sulit lho memahami logika rumus panjang seperti di atas. Lebih sulit lagi cara menjelaskannya. Dan tentu yang paling sulit cara membuatnya untuk pertama kali. (OKI, kita harus berterima kasih kepada kedua Maha Guru Excel Indonesia yang telah memberikan kita, Para Guru, rumus yang hanya tinggal pakai saja).


Sebagai sebuah MegaFomula, maka memahami alur logika rumus mempunyai kesulitan tersendiri. Untuk itu, kita perlu memecah rumus tersebut menjadi beberapa bagian. Saya memecah menjadi 15 bagian. Lalu ke-15 bagian tersebut di-Kompress menjadi 4 bagian saja:
1. Bilangan Ratusan
2. Bilangan Puluhan dan Satuan
3. Koma
4. Bilangan Desimal.
Barulah dari 4 bagian tadi barulah digabung jadi satu rumus tunggal.
Berikut Pemecahan rumus di atas:




dikompress jadi 4 langkah saja:
Maka jadilahMega Formula seperti di atas.


Info Tambahan:
Rumus Index(N,.....). N yang dimaksud di sini adalah sebuah Name_Range yang berisi: 
={"Satu ","Dua ","Tiga ","Empat ","Lima ","Enam ","Tujuh ","Delapan ","Sembilan "}


File penjelasan langkah-langkah di atas, bisa didownload di sini atau di Boxnet pada SideBar.

Kamis, 19 Januari 2012

Boolean Logic dan Rumus Kelulusan Ujian Nasional

Boolean Logic? Ehm, minuman apa lagi ini? Dan apa kaitannya dengan Ujian Nasional?


Tentang BOOLEAN LOGIC
Pada pelajaran Matematika di sekolah, ada materi LOGIKA MATEMATIKA sbb:
Pernyataan Benar (TRUE) dan Salah (FALSE) merupakan konsep penting yang dulu diajarkan oleh guru Matematika SMP dan SMA. Di Excel, data bertipe TRUE dan FALSE disebut sebagai Data BOOLEAN. Sehingga Logika TRUE dan FALSE tadi bisa kita sebut sebagai BOOLEAN LOGIC.

Prinsip penting dalam BOOLEAN LOGIC di Excel yang perlu mendapat perhatian adalah:

Senin, 16 Januari 2012

Sulap Excel : Bermain-main dengan Worksheet_Events

SULAP? Ya... mengapa tidak.


Performance
1. Insert sebuah atau beberapa gambar ke dalam Sheet.
2. Tuliskan kata "Hilang" di sel mana saja, lalu tekan Enter. maka Simsalabim.... Gambarnya akan hilang.
3. Tuliskan kata "Muncul" di sel mana saja, lalu tekan Enter. Maka Simsalabim.... Gambarnya muncul lagi.


The Secret:
1. Klik kanan nama Sheet, pilih View Code
2. Tuliskan Kode berikut:


Kamis, 12 Januari 2012

Teknik Menyembunyikan Banyak Sheet Sekaligus dan Menampilkannya


Ketika Contoh Aplikasi Raport yang Sudah Jadi diluncurkan, banyak email masuk ke saya yang menanyakan bagaimana caranya agar yang tampil dilayar hanya satu sheet saja sebagaimana tampilan pada file Raport tersebut. Nah, agar mempermudah memberikan penjelasan, posting kali ini membahas hal tersebut.

Dalam VBA, “Penampakan” (visiblity) suatu sheet dalam sebuah workbook ada tiga jenis:
  1.  xlSheetVisible : Sheet tampil sebagaimana biasa. Kodenya adalah (-1)
  2. xlSheetHidden: Sheet di-hide disembunyikan dengan cara biasa. Untuk menampilkannya cukup dengan klik kanan sebuah sheet, kemudian pilih Unhide. Kodenya adalah (0)
  3. xlSheetVeryHidden : Menyembunyikan sheet dengan cara ini, menyebabkan sheet tidak bisa ditampilkan denga cara biasa, walaupun sebuah nama sheet di-klik kanan, tulisan Unhide tidak muncul. Untuk menampilkannya harus masuk ke VBA Editor, kemudian mengubah properti visible-nya menjadi xlSheetVisible, atau melalui kode makro. Kodenya adalah (2)
Kode macro terkait dengan "penampakan" sheet ini adalah:
Sheets("NamaSheet").Visible = kode
Contoh, untuk menyembunyikan "Sheet1" :
Sheets("Sheet1").Visible = 2 
atau 
Sheets("Sheet1").Visible = xlSheetVeryHidden
Untuk menampilkannya kembali :
Sheets("Sheet1").Visible = -1 
atau 
Sheets("Sheet1").Visible = xlSheetVisible

Bagaimana cara menyembunyikan banyak sheet sekaligus?

Minggu, 08 Januari 2012

Cara Mencegah Save As pada Ms Excel

Terkadang, kita tidak ingin user memanfaatkan penggunaan Save As pada workbook yang kita buat. Hal ini dilakukan jika workbook digunakan oleh beberapa orang, dan kita tidak ingin terjadi duplikasi file yang isinya sama, namun nama filenya berbeda.
Untuk mencegah user menggunakan fasilitas Save As pada suatu workbook, maka langkahnya adalah sbb:
1. Buka workbook 
2. Tekan Alt + F11
3. Klik kanan objek ThisWorkbook, pilih View Code
4. Tuliskan code berikut:



Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim lReply As Long




  If SaveAsUI = True Then




lReply = MsgBox("Maaf, Anda tidak diperkenankan menyimpan workbook ini dengan nama lain. Anda ingin menyimpan workbook ini?", vbQuestion + vbOKCancel)


     Cancel = (lReply = vbCancel)


   If Cancel = False Then Me.Save


     Cancel = True


  End If


End Sub

5. Tekan Alt + Q untuk kembali ke Excel
6. Selesai

Selanjutnya, jika user mencoba mengakses Save As, maka akan muncul peringatan seperti ini:

File contoh bisa didownload di sini atau pada boxnet di samping

Senin, 02 Januari 2012

Tips Merapikan Kode Makro Hasil Recording (Rekaman)

Record Macro adalah salah satu fitur yang sangat berguna bagi pemakain Excel baik user pemula maupun user yang sudah berpengalaman. Namun, kode macro yang dihasilkan dari proses perekaman Makro tersebut kadang butuh sentuhan lanjutan agar lebih rapi dan berjalan lebih cepat.
Beberapa tips berikut bisa dijadikan pedoman.