You've probably noticed

We love Excel

Author

When some user experience severe excel problem, it is not uncommon for their job activity to disturbed.
My great passion is bringing solution to some user who have been trought those experience, so they can save their times fixing excel issues.

  • myexcelive@gmail.com
  • www.excelive.com
  • READ MORE
Me

What will you get here

We have been work hard to bringing something useful for you in order to help your excel issues

Macro VBA 70%
Formula Excel 45%
Tips and Tricks 15%
Miscellaneous 25%

Expertise

We share the tutorials that we ourselves have tested in the workplace and slightly refine it to make it easy for you

Our Article

Every article on this site is presented explicitly so that you can understand the purpose of each tutorial.

Efficiency

We provides examples of just for illustration only, and we do not guarantee that they can be used in all situations.

Installation

every each codes on this site are provided "as is" and are easy to install

Youtube

in order to facilitate you in learning excel, you can visit our channel here

Design

all the design of each tutorial has passed the test for excel 2007 up

Menampilkan postingan yang diurutkan menurut relevansi untuk kueri logika if. Urutkan menurut tanggal Tampilkan semua postingan
Menampilkan postingan yang diurutkan menurut relevansi untuk kueri logika if. Urutkan menurut tanggal Tampilkan semua postingan
  • Kode Macro VBA untuk menampilkan Informasi Data Dari 3 Kriteria

    kriteria macro vba Banyak cara yang digunakan dalam menentukan ukuran yang menjadi dasar untuk menampikan atau menyembunyikan suatu data, atau lebih mudahnya disebut sebagai kriteria. Ya, suatu kriteria dapat digunakan sebagai patokan kapan atau bagaimana data-data tersebut ingin ditampilkan, atau diambil untuk kemudian diolah lagi dengan data lainnya.

    Ambil contoh seperti berikut, seorang pengunjung toko handphone ingin mengetahui harga sebuah produk, sebut saja VIVO versi V5 yang dibuat atau direlease di tahun 2015, serta ingin mengetahui juga ketersediaan barangnya. Dan jika dari kumpulan data-data yang tersimpan didalam komputer tersebut memiliki informasi berupa merk VIVO dengan versi V5-nya serta buatan tahun 2015, maka komputer atau aplikasi akan menampilkan informasi harga serta stok barang sesuai dengan kriteria yang dimasukkan oleh pengunjung toko tersebut.

    Nah dari gambaran diatas, variabel seperti VIVO, V5 dan tahun 2015 adalah sebuah kondisi yang harus dipenuhi untuk menampilkan hasil berupa Informasi Harga Produk dan Stok Barang.

    Jika contoh diatas diterjemahkan dalam sekumpulan data Microsoft Excel, maka tampilannya kurang lebih seperti berikut :
    Data toko handphone

    Ok, sekarang kita akan mencoba melakukan pencarian data seperti yang dilakukan oleh pengunjung toko handphone menggunakan data-data yang tersimpan dalam Microsoft Excel.
    Saya berasumsi data-data yang tersimpan di komputer memiliki susunan yang kurang lebih seperti apa yang saya sajikan diatas. Dan selanjutnya kita akan mencari nilai dari sekumpulan data-data yang sudah ada ini untuk menampilkan informasi berdasarkan 3 (tiga) buah kriteria seperti yang sudah saya gambarkan sebelumnya.
    Dan sesuai dengan judul tutorial ini, maka syarat yang tidak kalah penting yang harus dilakukan terlebih dahulu adalah menonaktifkan keamanaan Macro Microsoft Excel anda, agar nantinya kode-kode yang ditulis bisa dijalankan secara maksimal.

    Jika persiapan sudah oke, silahkan ikuti langkah demi langkah yang saya sajikan berikut ini :
    1. Aktifkan terlebih dahulu jendela Microsoft Visual Basic Editor jika belum, yakni dengan menekan tombol pintas ALT+F11
    2. Buat sebuah module baru melalui menubar Insert, kemudian pilih Module
    3. Tulis atau tempelkan sederetan baris Macro VBA berikut ini di dalam module yang sudah dibuat dilangkah sebelumnya
      Sub TigaKriteria()
      On Error Resume Next
      Dim a, b As Variant 
      Dim c As Double 
      Dim psn As Boolean
      Dim isi
      psn = False
      isi = Cells(Rows.Count, 1).End(xlUp).Row
      
      a = Application.InputBox("Nama item atau produk")
      b = Application.InputBox("Jenis versi produk")
      c = Application.InputBox("Tahun dibuat")
      For i = 2 To isi
      If InStr(UCase(Cells(i, 2)), UCase(a)) And _
         InStr(UCase(Cells(i, 3)), UCase(b)) And _
         Cells(i, 4) = c Then
      If psn = False Then
          MsgBox "Hasil pencarian untuk item : " & _
                  Cells(i, 2) & " " & Cells(i, 3) & " " & Cells(i, 4) & vbCr & _
                  "Price : " & Format(Cells(i, 5), "#,##0") & vbCr & _
                  "Stok : " & Cells(i, 6) & " bh"
          psn = True
      End If
      End If
      Next
      End Sub



      Penjelasan ringkas kode di atasUntuk lebih memahami kode-kode yang sudah saya tuliskan ini dan tidak asal copy-paste, berikut keterangan secara singkat baris-baris penting yang terdapat dalam serangkaian kode Macro VBA diatas
      • On error resume next
        adalah sebuah statement yang akan mengabaikan semua perintah jika terjadi sebuah kesalahan
      • Dim a, b As Variant
        saya mendeklarasikan variabel a dan variabel b sebagai variant, karena nantinya nilai-nilai yang terdapat dalam variabel ini berisi sebuah teks (nama item dan versi handphone)
      • Dim c As Double / Long
        sesuai dengan cerita contoh diatas bahwa terdapat sebuah variabel yang menunjukkan tahun dikeluarkannya sebuah produk Handphone, maka variabel c saya deklarasikan sebagai Double atau anda juga bisa mendeklarasikan sebagai Long agar dapat menyimpan nilai sebagai angka (numeric)
      • Dim psn As Boolean
        Untuk variabel psn, saya fungsikan ia sebagai sebuah Boolean agar ia bisa menyimpan nilai TRUE atau FALSE. Variabel nilai psn sendiri saya gunakan agar nantinya kotak pesan (MsgBox) tidak muncul secara berulang-ulang
      • psn = False
        melanjutkan dari penjelasan sebelumnya, variabel psn yang sudah saya deklarasikan sebagai Boolean saya beri dia nilai awal dengan nilai FALSE.
        Variabel dan nilai dari psn ini bersifat pilihan, artinya jika anda ingin menampilkan hasil pencarian langsung ke dalam lembar kerja maka anda tidak perlu menempatkan baris perintah ini
      • isi = Cells....
        Baris kode ini memuat sebuah nilai yang dapat digunakan untuk mencari informasi baris terakhir yang berisi data berdasarkan kolom A atau indeks kolom ke-1, sehingga ia akan mencari jumlah atau banyaknya data secara otomatis
      • a = ... nama item
        Nilai ini dideklarasikan sebagai sebuah Variant yang digunakan sebagai kriteria pertama, dan untuk contoh ini kriteria yang dimaksud adalah Nama Item yang dapat dimasukkan melalui jendela InputBox
      • b = ... versi produk
        sama seperti nilai a, hanya saja ia di dijadikan sebagai kriteria kedua yakni akan membaca versi sebuah produk
      • c = ...tahun
        Berbeda dengan nilai a dan nilai b, nilai ini menyimpan informasi sebagai angka dan dijadikan sebagai kriteria ketiga.
      • For i = 2 to Isi
        Baris ini merupakan perintah awal untuk pengulangan (loop), yang mana pengulangan akan dibaca mulai dari baris ke-2 sampai dengan baris sebanyak yang diketahui oleh nilai yang didapatkan oleh variabel isi
      • If InStr.......
        Kata kunci dari bahasa logika yang cukup panjang ini terdapat dalam baris perintah InStr...., saya gunakan untuk 'mengunci' dan mencari kesamaan nilai antara nilai yang dimasukkan di setiap variabel dengan kolom indeks yang sesuai dengan kriteria yang dimasukkan, seperti :
        • variabel a memiliki nilai sama dengan nilai yang ada di kolom indeks ke-2, dan
        • variabel b memiliki nilai sama dengan nilai yang ada di kolom indeks ke-3, dan
        • variabel c memiliki nilai sama dengan nilai yang ada di kolom indeks ke-4
        dengan menggunakan parameter InStr..., Maka Macro VBA akan 'memaksa' untuk menyamakan penulisan karakter huruf besar atau huruf kecil agar tidak bersifat case-sensitive.
        Masih dalam logika IF yang pertama, dimana jika semua kondisi-kondisi ini terpenuhi maka baris perintah yang akan dieksekusi adalah :
        • If Psn = False
          Ok, logika If ini kita sebut saja sebagai logika IF yang kedua dimana ia terdapat didalam logika IF yang pertama yang mana fungsi utama dari logika IF kedua ini adalah jika variabel nilai psn adalah False (lihat penjelasan psn = False), maka sebuah kotak pesan dengan berbagai informasi pencarian akan ditampilkan.
          Dan setelah logika IF yang kedua ini dieksekusi, maka variabel psn saya rubah nilainya menjadi TRUE agar nantinya hasil pencarian TIDAK ditampilkan secara berulang-ulang
        • End IF
          Adalah sebuah parameter yang wajib dituliskan untuk menutup Logika IF. Karena dalam tutorial ini saya menggunakan 2 logika IF maka parameter End IF berjumlah 2
      • Next
        Baris perintah terakhir dari serangkaian kode Macro VBA ini adalah parameter Next, sebagai penutup dari parameter For i.....

    Barangkali serangkaian baris kode Macro VBA yang kita tuliskan jika dibahasakan dalam bahasa sehari-hari kurang lebih seperti setiap poin yang saya jelaskan diatas. Dan mudah-mudahan penjelasannya bisa dimengerti.
    Namun jika anda menemui kendala, silahkan anda tuliskan beberapa hal yang masih belum dipahami dari tutorial ini dalam kolom komentar dibawah.

    Sebagai penutup, berikut saya tampilkan hasil akhir dari tutorial ini. Dan jika anda mengikuti langkah demi langkah yang saya berikan dalam tutorial ini, maka andapun akan mendapatkan hasil akhir seperti yang tampak dalam tampilan berikut
    Kode Macro VBA 3 Kriteria

    Selamat... anda sudah berhasil mengetahui bagaimana caranya menampilkan informasi berdasarkan 3 (tiga) buah kriteria yang diinput atau dimasukkan melalui jendela InputBox. Mudah-mudahan tutorial kali ada guna dan manfaatnya, dan membantu anda menyelesaikan permasalah excel yang saat ini anda hadapi.
    Silahkan bookmark website ini jika anda suka dengan tutorial-tutorial yang telah kami sajikan, dan jangan lupa kunjungi kami lain waktu untuk mengetahui kehebatan Microsoft Excel lainnya bersama excelive.com. Despedida.

  • Logika Sederhana Untuk Mengulang Tampilan Jendela InputBox Hingga Kondisi Terpenuhi

    Loop InputBox Konsep pengulangan yang tertulis di judul artikel ini hampir memiliki kemiripan dengan fungsi Loop seperti For...Next, akan tetapi pada tutorial yang akan kita bahas kali ini, pengulangan akan terus terjadi sampai dengan batas waktu yang tak terhingga, artinya ia hanya akan berhenti ketika kondisi sudah terpenuhi (infinity loop).

    Kondisi yang dapat menghentikan proses pengulangan ini tentu saja terserah masing-masing individu, mau berdasarkan apa dan bagaimana bentuk serta jenis nilainya, semuanya tergantung kebutuhan pengguna.

    Namun untuk tutorial ini, saya akan membatasi kondisi yang berasal dari nilai-nilai yang terdapat di dalam lembar kerja sehingga nantinya anda dapat lebih mudah memahami dan tentu saja dapat memperoleh gambaran akan kegunaannya nanti. Dan karena tutorial ini saya usung dari beberapa konsep yang hampir serupa dengan tutorial yang pernah saya bahas di situs xcelive, maka ada baiknya anda memahami dan baca tutorial pendukung seperti berikut
    Bekerja dengan Jendela InputBox di excel
    Menggunakan parameter Loop For...Next untuk mencari sebuah nilai
    Menuliskan formula dengan bahasa Macro VBA
    Menggunakan Logika IF dalam Macro VBA Excel

    Oke, saatnya kita menyiapkan beberapa nilai yang akan kita jadikan sebagai 'jawaban' yang harus dipenuhi oleh pengguna ketika mengetikkan ke dalam jendela InputBox. Dengan kata lain... 'jawaban' inilah nanti yang akan mempengaruhi pengulangan dari munculnya jendela InputBox - ketika pengguna menuliskan jawaban yang salah.

    Dan seperti yang sudah saya singgung di atas guna mempermudah dalam memahami tutorial ini, kondisi (jawaban) saya letakkan di lembar kerja, tepatnya di kolom A seperti tampilan berikut.
    membuat jawaban untuk isian InputBox

    Langkah selanjutnya adalah membuat jendela InputBox yang harus dibuat menggunakan kode Macro VBA yang diawali dengan mengaktifkan jendela Microsoft Visual Basic Editor yang bisa diakses menggunakan tombol Alt+F11 di keyboard anda.
    Selanjutnya adalah membuat sebuah module baru yang digunakan sebagai wadah dari bahasa-bahasa kode VBA untuk menampung perintah sesuai dengan penjelasan di atas, dan berikut ini script kodenya:
    Sub JawabIni()
    Dim i As String
    On Error GoTo a
    tanya = Application.InputBox("Bagaimana isi tutorial di excelive.com", "Survey")
    If tanya = "" Or tanya = 0 Then Exit Sub
    i = Application.WorksheetFunction.Match(tanya, Range("A:A"), 0)
    If i > 0 Then
        MsgBox "Terimakasih atas feedback anda" 
        Exit Sub
        Else
        Exit Sub
    End If
    
    a:
    myinput = Application.InputBox("Silahkan coba lagi" & vbCr & "jawabannya apa .....!")
    If myinput = "" Or myinput = 0 Then Exit Sub
    If Err.Number > 0 Then
    Resume
    Else
    i = Application.WorksheetFunction.Match(myinput, Range("A:A"), 0)
    If i > 0 Then
        MsgBox "Terimakasih atas feedback anda"
        Exit Sub
        Else
        Exit Sub
    End If
    End If
    End Sub
    Penjelasan singkat baris-baris kode di atas adalah sebagai berikut:
    1. On Error Goto a
      adalah sebuah kondisi awal yang harus dipenuhi bahwa jika jawaban yang di input ternyata salah maka, baris kode a akan dieksekusi, sementara jika benar maka perintah ini akan diabaikan
    2. tanya
      sebuah baris perintah untuk memanggil jendela inputbox dengan isi pesan "Bagaimana isi tutorial di excelive.com". Jendela ini juga mempunyai nama atau judul "survey".
    3. If tanya = .....
      Sebuah logika sederhana yang berfungsi untuk menutup semua rangkaian kode ini jika kotak isian berisi 0 atau kosong, atau jika pengguna menekan tombol X
    4. i = ...
      Sebuah nilai yang berisi formula MATCH yang saya fungsikan untuk melihat apakah nilai yang diinput melalui kotak InputBox cocok dengan nilai-nilai yang ada di rentang sel A1 hingga A5
    5. If i > 0
      Logika sederhana untuk mendeteksi jika nilai i ada yang sesuai
    6. MsgBox "Terimakasih..."
      Sebuah informasi yang menunjukkan bahwa jawaban sudah sesuai dengan yang diharapkan
    7. Exit Sub
      Bertugas untuk menghentikan proses pembacaan sebuah prosedur atau module
    8. a:
      Sebuah statement atau baris tujuan (destination list) yang akan dijalankan jika nilai yang dimasukkan di inputBox tidak cocok dengan nilai-nilai yang ada di dalam lembar kerja
      Sebagian besar isi dari statement a: memiliki kesamaan dengan kode inti sebelumnya, hanya saya ada 2 buah baris kode yang saya sematkan dalam statement a: yakni
      • If Err.Number > 0
        Logika ini berfungsi untuk mengecek jika ternyata hasil formula MATCH menghasilkan nilai Error #N/A. Logika ini bisa dikatakan memiliki kemiripan dengan fungsi IFERROR.
      • Resume
        Adalah sebuah statement utama dalam tutorial ini yang memiliki fungsi untuk mengulangi statement atau baris yang menyebabkan kesalahan, dalam hal ini adalah statement a:
    Silahkan anda coba pahami cara kerja dari tutorial ini lewat tampilan hasil akhir yang sudah saya siapkan berikut
    cara menggunakan statement resume

    Semoga tutorial yang cukup singkat ini dapat menambah perbendaharaan materi serta meningkatkan kemampuan Microsoft Excel Anda.
    Jika ada pertanyaan seputar tutorial mengulang tampilan jendela InputBox hingga sebuah kondisi tertentu terpenuhi, silahkan tulis di kolom komentar atau silahkan anda hubungi kami disini. Dan jangan lupa untuk bookmark situs kami agar anda lebih mudah mengunjunginya lain waktu. Gracias

  • Hanya Butuh 1 Tombol Untuk 2 Perintah Berbeda

    1 untuk 2 Ini adalah arti dari sebuah efektifitas dalam melakukan sebuah pekerjaan, dimana kita hanya membutuhkan 1 buah tombol untuk melakukan 2 (dua) buah perintah yang berbeda, dan jelas sekali bahwa dengan menggunakan tips ini akan mempercepat pekerjaan karena kita hanya cukup menggunakan 1 buah tombol saja.

    Mungkin ada pertanyaan yang tersirat di dalam benak anda, iya memang tombol yang digunakan hanya satu, tapi bagaimana dengan baris perintah atau kodenya, lebih dari satu kan?

    Emmm... coba perhatikan contoh berikut; saya kebetulan memiliki sebuah tombol yang ingin saya fungsikan untuk menyembunyikan Sheet2, tetapi tombol tersebut juga ingin saya fungsikan untuk menampilkan sheet yang sudah saya sembunyikan tadi. Kira-kira, bagaimana bahasa logika yang saya butuhkan untuk menerjemahkan contoh tersebut.

    Kalau anda menjawab dengan menggunakan logika IF maka itu adalah benar dan statement logika IF memang menjadi pilihan yang sangat tepat untuk menerjemahkan kalimat diatas ketika menyusun sebuah perintah Macro VBA, dan kurang lebih kumpulan baris perintahnya akan menjadi seperti ini
    If Sheets(2).Visible = True Then
        Sheets(2).Visible = False
        Else
        Sheets(2).Visible = True
    End If
    Apakah kode di atas berhasil menyembunyikan dan menampilkan kembali sheet tersebut hanya menggunakan sebuah tombol??? jawabannya tentu saja berhasil, dan bahkan sangat sempurna.
    Sayangnya, baris kode tersebut terlihat tampak agak sedikit panjang, hal ini dikarenakan memang syntax dari penulisan statement IF seperti itu. Tapi jika yang diminta adalah untuk menyembunyikan dan menampilkan Sheet2 menggunakan satu tombol, maka statement IF telah berhasil mengerjakan tugasnya.

    Nah, sekarang kita akan mencoba menyempurnakan kode di atas untuk menyelesaikan tugas ini tanpa menggunakan statement IF, karena mungkin anda sudah bosan menggunakannya atau mungkin ingin mencari alternatif cara lain yang memiliki fungsi yang sama seperti statement IF dalam menyelesaikan kasus di atas.

    Silahkan anda coba kode berikut ini dan sematkan dalam sebuah tombol CommandButton
    Sheets("Set2").Visible = Not Sheets("Set2").Visible
    Kunci dari baris kode di atas terdapat dalam sebuah parameter = Not, dan oleh karena itu saya menamai kode ini dengan nama = Not.

    Bagaimana? terlalu singkat, terlalu pendek, atau ingin yang lebih panjang lagi???, silahkan coba cara berikut ini yang juga tidak menggunakan statement IF melainkan menggunakan model pendekatan Select Case
    Dim ws As Worksheet
    Dim status
    Set ws = Sheets("Set2")
    status = ws.Visible
    
    Select Case status
    Case True
        ws.Visible = False
    Case Else
        ws.Visible = True
    End Select
    Ternyata makin panjang dan ruwet ya. hehehe....

    Ketiga kode Macro VBA yang sudah saya paparkan di atas sama-sama memiliki tugas yang sama yakni menampilkan dan menyembunyikan lembar kerja hanya dari sebuah tombol. Silahkan anda pilih sendiri mana dari ketiganya yang sesuai dengan kebutuhan.

    Untuk menyempurnakan posting kali ini, saya akan berikan hasil akhir dari serangkaian kode-kode Macro VBA yang sudah kita buat di atas

    Sekarang anda sudah berhasil mempelajari bagaimana cara menampilkan dan menyembunyikan lembar kerja hanya melalui sebuah kontrol CommandButton. Semoga Anda menyukai tutorial dari excelive untuk edisi ini.
    Kunjungi kami lain waktu untuk mengetahui kehebatan Microsoft Excel lainnya, See you soon....

  • 3 Kode Macro VBA Untuk Menyembunyikan Kolom

    menyembunyikan kolom Kolom adalah salah satu bagian dari lembar kerja (Worksheet) Microsoft Excel yang disusun secara melintang vertikal dan ditandai dengan huruf A,B,C, dan seterusnya hingga abjad XFD. Jumlah maksimal dari jumlah kolom (16.384 kolom) mulai di kenalkan pada Microsoft Excel versi 2007, sementara untuk versi Microsoft Excel dibawahnya anda hanya akan diberikan sebanyak 256 kolom saja atau maksimal sampai dengan abdaj IV. Hal ini sejalan dengan perbedaan jumlah baris yang di miliki antara versi Microsoft Excel 2007 dengan versi sebelumnya.

    Secara khusus Microsoft Excel memang ingin membedakan identitas antara kolom dan baris seperti yang telah saya singgung di atas, namun ternyata penulisan kolom tidak selamanya harus ditulis menggunakan abjad, ini jika kita menuliskannya sebagai baris kode Macro VBA yang disematkan pada parameter Cells. Lihat contoh berikut :
    Sel A1 : Cells(1,1)
    Sel B5 : Cells(5,2)
    Sel Z8 : Cells(8,26)
    dan seterusnya.

    Pada umumnya ketika kita menulis alamat sel selalu di awali dengan penyebutan kolom kemudian dilanjutkan dengan baris, akan tetapi ketika ingin merujuk alamat sel dengan menggunakan Kode Macro VBA maka penulisannya diawali dengan baris dilanjutkan dengan kolom. Inilah pemahaman dasar yang perlu diketahui agar mudah mengikuti tutorial kita kali ini, yakni menyembunyikan kolom dalam lembar kerja Microsoft Excel.

    Seperti biasa, kita membutuhkan sebuah skenario sederhana yang akan digunakan sebagai bahan untuk menguji kode Macro VBA yang akan kita buat, dan skenario kita kali ini adalah :
    Menyembuyikan kolom mulai dari kolom ke-2 atau kolom B sampai dengan kolom ke-26 atau kolom Z yang berisi nilai-nilai yang ada di baris 2 berdasarkan kriteria yang terdapat di sel A1

    Ok, dalam skenario di atas setidaknya ada point-point penting yang perlu diperhatikan, antara lain:
    - Sel A1 adalah sebuah sel yang digunakan sebagai kriteria untuk menyembunyikan kolom.
    - Isi sel yang akan di jadikan acuan untuk menyembunyikan kolom A sampai dengan kolom Z adalah baris ke-2.
    - Kolom-kolom yang akan disembunyikan jika terdapat nilai yang sesuai dengan kriteria adalah kolom A sampai kolom Z.
    Dan kira-kira seperti inilah data yang ada di dalam lembar kerja kita.


    Tahapan selanjutnya adalah menulis kode VBA untuk menerjemahkan skenario di atas, dan berikut langkah-langkahnya :
    1. Buka jendela Microsoft Visual Basic Editor dengan menekan tombol pintas ALT+F11 di keyboard
    2. Silahkan buat sebuah module baru dengan cara klik menu Insert > Module, kemudian silahkan tulis (copy paste) beberapa kode berikut didalamnya
      Kode Pertama
      Sub Satu()
      kriteria = [A1]
      For Kol = 2 To Range("Z2").End(xlToLeft).Column
          If Cells(2, Kol) = kriteria Then
              Cells(2, Kol).EntireColumn.Hidden = True
          End If
      Next Kol
      End Sub



      Kode ini di awali dengan menentukan lokasi alamat sel yang dijadikan sebagai kriteria, yakni sel A1. Kemudian dilanjutkan dengan menentukan indeks untuk kolom yang di mulai dari indeks 2 sampai dengan kolom Z, dan memiliki sifat dinamis. Perintah ini ada di dalam variabel Kol
      Setelah nilai untuk indeks kolom berhasil ditemukan, selanjutnya adalah menjalankan logika IF yang gunakan untuk mencari nilai yang berada di sepanjang baris 2 yang ada di setiap kolom yang tertulis di dalam nilai atau variabel Kol, apakah sesuai dengan kriteria atau nilai yang ada di sel A1 atau tidak, jika sesuai maka kolom yang isi selnya sama dengan kriteria akan di sembunyikan.

      Kode Kedua
      Sub Dua()
      Dim Isi As Range
      For Each Isi In Range("B2", Range("Z2").End(xlToLeft))
          Isi.EntireColumn.Hidden = (Isi = [A1])
      Next Isi
      End Sub
      Berbeda dengan kode sebelumnya, kode ini menggunakan parameter For Each yang mana kode di awali dengan mendeklarasikan sebuah nilai Isi sebagai nilai range. Selanjutnya baru baris kode inti akan di jalankan yakni dengan membaca bahwa setiap sel yang berada di rentang B2 hingga Z2 apakah memiliki isi yang sama dengan kriteria yang ada di sel A1 apakah tidak. Tentunya jika sama dengan kriteria maka tentu anda tahu apa yang akan terjadi bukan...

      Kode Ketiga
      Dim rng As Range
      For Each rng In Range("B2:Z2")
          If rng = [A1] Then
              rng.EntireColumn.Hidden = Not (rng.EntireColumn.Hidden)
          End If
      Next
      kode ini memiliki struktur yang hampir memiliki kesamaan dengan kode kedua, hanya saja untuk eksekusi nilai menggunakan logika IF, juga terdapat sebuah nilai NOT yang mana ia memiliki fungsi ganda yaitu menampilkan kolom dan juga menyembunyikannya tanpa harus menggunakan kode lainnya.

      Bonus Kode - Clear
      Sub Bersih()
          Range("B:Z").EntireColumn.Hidden = False
      End Sub
      Sebenarnya kode ini adalah kode pelengkap saja, karena fungsi utamanya adalah untuk menampilkan kembali kolom-kolom yang sebelumnya disembunyikan. Tapi jika anda menggunakan Kode Ketiga, maka anda tidak memerlukan kode ini untuk menampilkannya
    3. Hingga langkah ini sebenarnya anda sudah bisa mencobanya dengan cara menekan tombol F5 atau klik ikon yang ada di menubar. Tapi jika anda tidak ingin menjalankannya lewat jendela Visual Basic Editor dan ingin melihat perubahan secara langsung di lembar kerja, maka anda bisa menambahkan beberapa objek Form Controls yang diletakkan dalam lembar kerja seperti contoh berikut :
      Controls excel live

    Untuk menyempurnakan tutorial kali ini, saya akan memberikan contoh hasil akhir seperti tampilan berikut :
    hide column excel live

    Sekarang anda sudah tahu bagaimana caranya menyembunyikan kolom dalam lembar kerja Microsoft Excel yang sesuai dengan kriteria, semoga tutorial excel ini ada guna dan manfaatnya.
    Jangan lupa silahkan anda subscribe agar anda tidak ketinggalan materi-materi terbaru Microsoft Excel lainnya bersama excel live. Gracias
  • Rahasia Menghapus Semua Baris yang Memiliki Kriteria Tertentu Hanya Dengan Sekali klik

    del-row with vba excel Sebuah dokumen Microsoft Excel yang saat ini sedang atau yang akan dibangun dari berbagai format atau model data, maka ia bisa dipastikan akan berada atau ditempatkan dalam sebuah kotak atau yang lebih umum dikenal dengan istilah sel, yakni sebuah kotakyang merupakan perpotongan antara kolom dan baris, dimana kolom diwakili dengan abjad sementara baris diwakili dengan angka, yang mana ketika keduanya digabungkan akan membentuk sebuah alamat sel.

    Jadi, dengan ribuan kolom serta jutaan baris yang disediakan oleh Microsoft Excel, maka sudah pasti bahwa alamat-alamat tersebut tidak ada satupun yang sama, dan inilah salah satu kunci yang memudahkan seorang pengguna untuk mengolah data-data yang ada dalam dokumen Microsoft excel.

    Dari penjelasan singkat di atas maka dapat ditarik sebuah kesimpulan sementara bahwasanya setiap sel atau range dapat kita jadikan sebagai kunci (baca:kriteria) yang dapat digunakan untuk mengatur, mengolah, atau memodifikasi isi dari alamat sel yang terkait. Inilah tugas kita sebagai seorang pengguna Microsoft Excel yang dituntut untuk lebih teliti dalam menentukan sel atau range mana yang akan dijadikan sebagai kriteria dan sel atau range mana yang akan diolah atau dimodifikasi.

    Ada sebuah contoh kasus yang cukup menarik dan sedikit membuat saya jengkel - karena saya membutuhkan waktu sekitar kurang lebih 30 menit hanya untuk menyelesaikan masalah sederhana ini disebabkan ketidak-telitian dalam proses membaca alur perintah. Dan contoh kasus tersebut adalah :
    Menghapus Semua Baris yang berisi sebuah data (kriteria) dengan menggunakan Macro VBA

    Silahkan baca tutorial yang berkaitan dengan pembahasan kali ini
    Menggunakan Looping For...Next
    Menentukan posisi baris terakhir
    Memahami konsep logika IF dalam Macro VBA

    Ok, sebelum mulai melakukan percobaan, silahkan lihat data yang akan kita eksekusi berikut :
    excel - hapus baris sama
    Dari data di atas, terdapat dua buah kolom yang terdiri dari nama dan status, di mana kolom B yang memuat nilai x akan kita jadikan sebagai kunci untuk memodifikasi sel yang terkait dengannya, yakni berupa perintah untuk menghapus baris.

    Ok, saya akan berikan contoh kode Macro VBA yang "salah" dalam membaca alur perintah yang telah membuat saya menghabiskan waktu beberapa menit untuk memahaminya.
    Sub Salah()
    a = Range("a1").End(xlDown).Row
    For i = 2 To a
      If Cells(i, 2) = "x" Then
      Rows(i).Delete
    End If
    Next
    End Sub

    Dan berikut ini kode Macro VBA yang sudah saya revisi untuk melakukan perintah penghapusan baris jika sel-sel yang terdapat di kolom B memuat nilai x
    Sub Revisi()
    a = Range("a1").End(xlDown).Row
    For i = a To 2 Step -1
      If Cells(i, 2) = "x" Then
      Rows(i).Delete
    End If
    Next
    End Sub

    Apa yang membedakan antara kedua Kode Macro VBA di atas ?
    Pada dasarnya perintah untuk menghapus baris sudah dibaca secara sempurna oleh Microsoft Excel, hanya saja keduanya memiliki perbedaan pada alur membaca perintah penghapusan, yakni; pada kode Macro VBA yang salah, dalam mengeksekusi perintah dilakukan dari baris atas ke bawah, Sementara untuk kode yang sudah direvisi dilakukan dari bawah ke atas.

    Lantas, di mana letak kesalahannya ?
    Jika membacanya dari atas ke bawah, dan pada saat proses hapus baris dilakukan - maka baris setelahnya akan naik dan mengisi baris sebelumnya yang telah terhapus, dan jika baris tersebut berisi kriteria yang dimaksud maka otomatis ia akan dilewati (inilah letak kesalahannya) dan proses pencarian akan dilanjutkan ke baris setelahnya.
    sebaliknya, jika membaca dari bawah ke atas maka saat proses hapus baris dilakukan, ia tidak akan mengubah stuktur data yang ada di atanya, dan kode akan tetap membaca membaca kriteria yang yang ada di atasnya sampai dengan batas baris yang telah ditentukan.

    Untuk melihat perbadaan antara kedua kode di atas, silahkan perhatikan demontrasi yang sudah saya siapkan untuk anda berikut ini
    Perbedaan kode Macro VBA - Hapus Baris

    Selamat...sekarang anda sudah berhasil mengetahui dan semoga memahami dengan baik bagaimana cara menghapus semua baris yang berisi nilai tertentu dengan tepat dan benar. Silahkan jadikan situs ini sebagai situs favorit anda dalam belajar Microsoft Excel. Ciao Adios.

    Bonus untuk anda, model lain kode Macro VBA menghapus baris yang memiliki kriteria tertentu dengan menggunakan parameter AutoFilter
    Sub Bonus_Hapus_Baris()
    Application.ScreenUpdating = False
        With ActiveSheet.Range(Cells(1, 2), Cells(Cells(Rows.Count, 2).End(xlUp).Row, 2))
            .AutoFilter Field:=1, Criteria1:="x"
            .Offset(1).Resize(.Rows.Count - 1).SpecialCells(xlCellTypeVisible).EntireRow.Delete
            .AutoFilter
        End With
    Application.ScreenUpdating = True
    End Sub

  • Cara Menggunakan Formula N dan T dalam Rumus Logika IF

    Menggunakan Formula N - Formula T Ms. Excel 2 Formula ini mungkin terdengar agak sedikit asing ditelinga kita, dan bahkan mungkin terbilang agak jarang digunakan. Meskipun demikian, dua formula yang memiliki nama yang sangat singkat ini bisa cukup membantu kita dalam menguji nilai yang terdapat dalam sebuah sel, apakah nilai tersebut berupa teks atau Angka.

    Sesuai dengan namanya, maka saya beranggapan bahwa nama dari kedua formula ini merupakan singkatan dari masing-masing huruf yang dimilikinya, dimana N untuk Number (angka) dan T untuk Text. Sementara untuk syntax penulisan formula, keduanya memiliki kesamaan dan kita tinggal menentukan Value yang dingin diuji saja.

    Formula N
    Formula ini berfungsi untuk mengembalikan nilai yang telah dikonversi menjadi bentuk angka, sehingga nilai yang akan dihasilkan adalah TRUE (1) atau FALSE (0)
    Contoh :
    Formula N
    =N(A1)Jika formula ini ditulis di sel B1 dan nilai yang dimasukkan di sel A1 berupa angka, maka hasil dari formula ini adalah 1. Sementara jika sel A1 berisi sebuah string atau teks atau kosong, maka hasilnya adalah 0

    Formula T
    Sama seperti formula N, namun fungsi dari formula ini adalah mengembalikan nilai yang telah dikonversi menjadi bentuk teks dan hasilnya adalah TRUE (1) dan FALSE (0)
    Contoh :
    Formula T
    =T(A1)Contoh lain menggunakan formula T sudah pernah saya bahas pada tutorial Menghilangkan nilai 0 dari hasil formula VLOOKUP

    Oke, sekarang kita akan mencoba mengkombinasikan 2 formula di atas dengan formula IF untuk menguji apakah nilai yang terdapat dalam sebuah sel berupa angka atau teks, dan mengganti hasil yang ditampilkan bukan berupa nilai 0 dan 1. Contoh berikut, saya gunakan untuk menguji nilai yang terdapat di sel A1
    Formula T/N dan IF
    =IF(A1="";"kosong";IF(N(A1)=A1;"Angka";IF(T(A1)=A1;"text"))))Penulisan formula di atas sering disebut dengan Formula IF bertingkat, hal ini disebabkan karena setidaknya terdapat 3 buah kriteria yang dibutuhkan untuk menguji value yang terdapat di sel A1 yakni; kosong, angka, dan teks.

    Tujuan lain dari penggunaan formula IF juga kita bisa mengganti hasil standard yang didapat dari Formula N dan T (0 dan 1) menjadi nilai lain yang kita inginkan, dalam formula IF ini kita bisa merubahnya atau mengganti nilainya jika kondisinya adalah benar.

    Perhatikan hasil akhir berikut ini :
    Menggunakan Formula N - T excel

    Selesai...
    Semoga artikel singkat ini dapat menambah wawasan baru dalam memahami cara menggunakan Formula N dan Formula T untuk mengetahui jenis nilai yang terdapat dalam sebuah sel.
    Jangan lupa bookmark situs ini untuk memudahkan anda mengunjungi kami lain waktu. Te veo de nuevo



  • Membuat Kotak Pesan Agar Tampil Sekali Dalam Parameter For..Next

    msgbox - xcelive Hampir setiap aplikasi komputer memiliki kotak pesan yang berisi beragam informasi yang bertugas memberitahu kepada pengguna akan apa yang sedang dikerjakan, yang mana munculnya kotak pesan ini dipicu oleh bermacam kondisi dan situasi, sebut saja ketika pengguna berhasil menyimpan hasil pekerjaannya atau ketika pengguna melakukan sesuatu yang 'dilarang' oleh aplikasi tersebut, atau sekedar ingin menampilkan infomasi kepada pengguna tentang status dari pekerjaannya.

    Berbagai macam kondisi yang menyebabkan munculnya kotak pesan tentunya berbeda antara aplikasi satu dengan lainnya, namun pada intinya munculnya kotak pesan disebabkan karena terdapat sesuatu yang memicunya. Tujuan dari kotak pesan memang ingin menampilkan informasi kepada pengguna tentang apa yang ia kerjakan dan biasanya juga menampilkan bantuan yang bertujuan untuk membantu pengguna dalam mengoperasikan aplikasi yang dimaksud.

    Meskipun boleh dibilang bahwa munculnya jendela kotak pesan dapat membantu pengguna dalam memutuskan apa yang seharusnya dilakukan. Namun terkadang munculnya bisa sangat menggangu dan bahkan tidak diharapkan, terlebih ketika kotak pesan disematkan dalam module pengulangan - sebut saja parameter yang digunakan adalah For...Next. Ya, parameter For..Next adalah salah satu parameter yang terdapat dalam Macro VBA Microsoft Excel yang memungkinkan suatu perintah dapat diulang-ulang beberapa kali dan akan berhenti sampai suatu kondisi telah terpenuhi.

    Coba perhatikan pernyataan berikut :
    Seorang user ingin mengisi baris 1 sampai dengan baris ke 3 pada kolom A dengan huruf ABC
    Maka dari pernyataan di atas dapat disimpulkan bahwa pengulangan perintah terjadi selama 3 kali, yakni perintah untuk mengisi huruf ABC mulai dari baris ke-1 dan akan berhenti pada saat masuk baris ke-3.
    Bahasa kode VBA sederhana untuk menerjemahkan kalimat diatas adalah :
    For a = 1 to 3
      Cells(a,1) = "ABC"
    next 
    Nah, sekarang coba bayangkan jika sebuah parameter MsgBox ditempatkan dalam parameter ini, pasti yang terjadi adalah pesan yang sama akan dibuka secara berulang-ulang sebanyak 3 kali. dan ini jelas-jelas akan sangat menganggu. Silahkan lihat kotak pesan yang muncul pada demonstrasi berikut
    xcelive - loop msgbox

    Demonstrasi diatas dihasilkan dari kode Macro VBA seperti ini
    For a = 1 to 3
      MsgBox "Pengulangan sebanyak " & a & " kali"
    next
    Dari kode diatas, saya hanya melakukan pengulangan perintah sebanyak 3 kali saja namun saya sangat terganggu dengan munculnya kotak pesan setiap kali pengungalan dilakukan. Bagaimana jika saya ingin melakukan pengulangan lebih banyak dari ini?! Mungkin capek dan tentu kesal karena harus menekan tombol OK pada jendela kotak pesan agar bisa menuju ke pengulangan berikutnya hingga selesai.

    Untungnya dengan menggunakan bantuan logika sederhana, 'kesalahan' ini bisa diatasi dan menghasilkan sesuatu yang seharusnya, yakni menampilkan kotak pesan cukup hanya sekali saja meskipun berkali-kali melakukan pengulangan perintah.
    Jika ingin mencobanya, tulis baris kode Macro VBA berikut dalam sebuah Module kemudian jalankan dengan menekan tombol F5 di keyboard anda atau bisa juga menjalankannya dengan menekan tombol yang terdapat di menubar.
    Sub PesanSekali()
    Dim Pesan As Boolean
    Pesan = True
    
    For a = 1 To 3
    If Pesan = True Then
      MsgBox "Pengulangan sebanyak " & a & " kali"
      Pesan = False
    End If
    Next
    End Sub
    Rangkuman dan penjelasan singkat kode Macro VBA diatas :
    1. Pesan As Boolean
      Sebuah variabel Macro VBA yang dapat digunakan untuk menyimpan nilai TRUE atau FALSE
    2. Pesan = True
      Digunakan untuk menentukan nilai awal dari nilai Pesan, yakni nilai TRUE
    3. For a = ....
      Berfungsi untuk melakukan pengulangan perintah sebanyak 3 kali
    4. If Pesan = True
      Baris ini berfungsi untuk melakukan pengecekan sebelum mengeksekusi perintah-perintah setelahnya, yakni jika kondisi dari nilai Pesan adalah TRUE.
      Dan karena sebelumnya kita sudah menentukan nilai Pesan dengan nilai TRUE, maka pasti perintah selanjutnya akan dieksekusi
    5. Pesan = False
      Nah, inilah baris perintah yang digunakan untuk menghentikan munculnya jendela kotak pesan secara berulang-ulang, karena paremeter dari Logika IF yang dituliskan sebelumnya hanya akan menjalankan perintah jika status dari nilai Pesan = TRUE
    Hasil akhir yang diperoleh dari kumpulan baris perintah Macro VBA yang sudah dibuat diatas tampak seperti dalam tampilan berikut :
    kotak pesan berulang - xcelive

    Lantas bagaimana cara mengkombinasikannya dengan kode-kode atau perintah lainnya?!
    Untuk mengetahui kegunaan dan cara mengaplikasikan kedalam baris perintah yang lebih kompleks, silahkan kunjungi tutorialnya disini

    Sebagai penutup untuk tutorial kali ini, saya ucapakan selamat kepada anda karena sudah berhasil mengetahui bagaimana caranya menghentikan munculnya kotak pesan agar tidak tampil secara berulang-ulang ketika di sematkan dalam parameter For..Next. Mudah-mudahan tutorial kali ada guna dan manfaatnya, dan membantu anda dalam menyelesaikan permasalah excel yang saat ini anda hadapi.

    Silahkan bookmark website ini jika anda suka dengan tutorial-tutorial yang telah kami sajikan, dan jangan lupa kunjungi kami lain waktu untuk mengetahui kehebatan Microsoft Excel lainnya bersama xcelive.com. We'll be right back


  • Memilih Isi Daftar ListBox Dengan Menggunakan Tombol Enter

    Fill Form ListBox Jika masih bertanya tentang bagaimana cara mengisi daftar ListBox, maka silahkan lihat beberapa tutorial terkait cara mengisi ListBox - karena saya tidak akan menjelaskannya di postingkan kali ini agar bisa lebih fokus terhadap tutorial yang akan kita bahas saja.

    Oke, saya berasumsi bahwa anda sudah cukup mahir mengisi daftar-daftar ListBox yang bisa anda pelajari melalui link yang sudah saya sediakan di atas. Selanjutnya adalah, kita akan mencoab memilih daftar-daftar yang terdapat dalam ListBox dengan menggunakan tombol Enter dan menampilkan informasi yang terkait dengan data tersebut.

    Sebelumnya, silahkan buat sebuah tabel yang berisi data-data yang diletakkan di sebuah lembar kerja untuk nantinya diletakkan di ListBox. Dan untuk tutorial ini, saya sudah menyiapkan data sebagai berikut:
    nama karyawan

    Jika anda perhatikan, maka daftar yang tampil di ListBox harusnya persis seperti apa yang tertulis di lembar kerja, yakni sejumlah 3 kolom dan berisi 5 buah baris yang memuat nama-nama karyawan. Sehingga jika di desain dalam sebuah UserForm maka akan terlihat seperti berikut :
    Daftar ListBox
    Dari tampilan di atas, terdapat sebuah kotak yang terdapat di sebelah ListBox. Kegunaan dari kotak ini (TextBox) adalah sebagai tempat untuk menampilkan informasi dari setiap baris atau nilai yang dipilih di ListBox, juga bisa digunakan sebagai tempat untuk merubah data yang terkait dengan daftar yang terpilih.

    Untuk langkah selanjutnya adalah kita menuliskan serangkaian baris kode berikut
    Kode UserForm
    Untuk menempatkan kode berikut ini, silahkan klik kanan objek UserForm yang sudah didesain kemudian pilih view code untuk langsung menuju jendela kode. Selanjutnya copy paste kode berikut ini yang sudah dilengkapi dengan even dan prosedur untuk masing-masing kontrol
    Private Sub UserForm_Activate()
    ListBox1.RowSource = "A2:C6"
    ListBox1.ListIndex = 0
    End Sub
    '--------------
    Private Sub ListBox1_Click()
    TextBox1 = ListBox1.Column(2)
    TextBox1.SetFocus
    End Sub
    '--------------
    Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
    If ListBox1.ListIndex + 1 = ListBox1.ListCount Then
        Cells(ListBox1.ListIndex + 2, 3) = TextBox1
        If MsgBox("Anda sudah berada di daftar paling akhir" & vbCr & _
               "Klik tombol YES jika ingin mengulang dari awal", vbYesNo) = vbYes Then
            ListBox1.ListIndex = 0
            TextBox1.SetFocus
            Call aa
            Else
            Call aa
        End If
        Else
        Cells(ListBox1.ListIndex + 2, 3) = TextBox1
        ListBox1.ListIndex = ListBox1.ListIndex + 1
        Call aa
        tb1 = ""
    End If
    End If
    End Sub
    
    Penjelasan singkat rangkaian kode di atas :
    • Menentukan isi daftar ListBox yang berasal dari range A2:C6 serta memilih daftar pertama yang terdapat di ListBox. Dua baris kode ini akan berjalan otomatis ketika UserForm dibuka
    • Disaat yang bersamaan pula, ketika isi ListBox terpilih maka kursor otomatis menuju kotak TextBox
    • Ketika kursor sudah berada di dalam kotak TextBox maka selanjutnya even yang saya pilih adalah KeyDown, artinya ketika pengguna menekan tombol-tombol yang terdapat di keyboard maka akan menjalankan perintah sebagai berikut :
      • Menentukan tombol yang hanya berlaku untuk even ini adalah tombol ENTER (keycode = 13)
      • Jika ternyata urutan daftar yang terpilih adalah sama dengan jumlah banyaknya daftar yang ada dalam ListBox, maka sebuah jendela informasi akan muncul. Dijendela informasi ini juga saya menyematkan sebuah logika yang bertujuan apakah pengguna ingin mengulangi dari awal atau tidak
      • Jika urutan daftar yang terpilih bukan data terakhir maka perintah atau kode yang akan dieksekusi adalah kode aa yang berikutnya saya tulis dalam sebuah module
    Setelah anda selesai menulis baris kode untuk UserForm, sekarang saatnya menuliskan kode di dalam module.

    Kode Module
    untuk meletakkan kode ini, maka yang harus anda lakukan terlebih dahulu adalah dengan membuat module baru dengan cara klik menu Insert kemudian klik Module, selajutnya copy-paste kode ini di dalamnya
    Sub aa()
    Application.OnTime Now + TimeValue("00:00:01"), "bb"
    End Sub
    '--------------
    Sub bb()
    With UserForm1
        .TextBox1.SetFocus
        .TextBox1 = .ListBox1.Column(2)
    End With
    End Sub

    Jika anda mengikuti langkah-langkah di atas secara tepat, hasil yang akan anda dapatkan ketika menekan tombol di menubar, maka akan tampak seperti tampilan berikut:
    memilih listbox dengan enter

    Selamat...anda sudah berhasil memilih item-item yang terdapat di dalam daftar ListBox dengan menggunakan tombol Enter yang terdapat di keyboard, juga anda bisa langsung merubah informasi yang terkait dengan item tersebut melalui kotak TextBox yang tersedia.
    semoga tutorial yang cukup singkat ini memberikan manfaat untuk anda. Adios

  • Menggunakan Parameter Intersect Dalam Macro VBA Excel

    Belajar Intersect Excel Dalam bahasa indonesia, kata intersect dapat diartikan sebagai titik temu yang mana ia dapat diartikan sebagai pertemuan antara dua buah range dan mengambil sel-sel atau range yang menjadi pertemuan antara keduanya.
    Pemahaman Intersect dapat di ilustrasikan dalam gambar berikut :
    mengenal parameter intersect excel
    Gambar di atas dapat dijelaskan bahwa pertemuan antara Range B2:D5 dan range C5:E7 adalah range C5:D5, inilah yang dinamakan dengan intersect.

    Untuk menerjemahkan gambar di atas ke dalam bahasa Macro VBA excel, cara sederhananya adalah dengan menuliskan kode berikut ke dalam sebuah Module kemudian jalankan, maka hasilnya ia akan menampilkan alamat dari pertemuan antara sel-sel atau range tersebut
    Sub Test1()
     MsgBox Intersect(Range("B2:D5"), Range("C5:E7")).Address
    End Sub
    Macro VBA intersect

    Sekarang, mari coba kita rubah salah satu parameter yang digunakan dalam penulisan range diatas menjadi seperti berikut:
    Sub Test2()
     MsgBox Intersect(ActiveCell, Range("C5:E7")).Address
    End Sub
    Jika anda menjalankan baris kode di atas dan jika alamat sel yang anda pilih saat ini tidak berada dalam lingkup Range C5:E7, maka pasti anda akan dihadapkan dengan pesan Run Time Error, hal ini terjadi karena parameter ini tidak mampu untuk membaca dan menemukan hasil pertemuan atau perpotongan sel. sebaliknya, jika sel yang saat ini aktif terpilih ada dalam rentang range tersebut, maka pesan yang berisi alamat sel akan ditampilkan.
    intersect excel vba

    Perbedaan mendasar antara module Test1 dan Test2 di atas terletak pada pemilihan alamat sel atau range yang dijadikan sebagai acuan untuk melihat perpotongan atau pertemuan sel. Anda tidak akan menemukan pesan error pada kode yang dituliskan pada module Test1, karena setiap alamat sel yang dituliskan memiliki perpotongan.
    Sementara untuk module Test2, karena salah satu sel berisi parameter ActiveCell yang meminta pengguna untuk menentukan sendiri sel yang jadi perpotongan dengan acuan range C5:E7, maka akan sangat mungkin muncul pesan error jika alamat sel yang aktif terpilih berada diluar range tersebut.

    Ok, untuk mencegah pesan error pada module Test2, bisa anda gunakan fungsi logika sederhana dengan menggunakan kata kunci (keyword) NOTHING. Kata kunci ini bertugas untuk menjelaskan kepada Excel bahwa tidak ada sel aktif yang sesuai dengan apa yang seharusnya dipilih.

    Sekarang coba perhatikan penyempurnaan dari module Test2 berikut ini :
    Sub Test2Lagi()
    If Intersect(ActiveCell, Range("C5:E7")) Is Nothing Then
        MsgBox "Coba pilih alamat sel dalam rentang C5:E7"
        Else
        MsgBox Intersect(ActiveCell, Range("C5:E7")).Address
    End If
    End Sub
    Penggunaan logika IF dengan disertai kata kunci Nothing seperti dalam kode di atas, mengganti pesan Run Time Error dengan kotak pesan (MsgBox) yang bisa kita isi sendiri.
    intersect dan keyword nothing

    Penggunaan yang paling umum dari metode Intersect ini biasanya digunakan dalam sebuah even ketika sebuah sel berubah, dalam bahasa Macro VBA even ini dikenal dengan even Worksheet_Change.
    Penjelasan mengenai cara menggunakan Intersect dalam even ini akan diulas dalam tutorial berikutnya.
    Jadi, jangan sampai ketinggalan. Dan silahkan anda subscribe atau bookmark situs ini untuk mengetahui kehebatan microsoft Excel lainnya bersama excelive.com. See you soon...


  • Kode Untuk Merubah Warna Interior dan Font yang Terdapat Di sebuah sel

    mewarnai sel di excel Setiap sel yang terdapat dalam lembar kerja Microsoft Excel, ibarat sebuah lembaran kecil yang siap untuk kita isi dengan berbagai macam jenis data, bisa berupa teks, angka, simbol-simbol, atau mungkin data berupa kalender atau jam. Artinya bahwa sel yang semula kosong bisa kita isikan dengan berbagai jenis data-data yang siap kita olah menjadi sebuah informasi yang dapat disesuaikan dengan kebutuhan.

    Secara ukuran, baik sel yang berisi data maupun yang kosong, keduanya sama-sama memiliki ukuran yang sama, begitu juga dengan warna interiornya. Hingga versi terbaru yang saat ini diluncurkan atau sampai posting ini diterbitkan, Microsoft Excel tidak memberikan fitur khusus untuk memberikan tanda atau warna terhadap sel yang memiliki isi atau tidak sebagai pembeda antara kedua. Dan untungnya, masalah kecil ini bisa dengan mudah kita buat sendiri, baik dengan menggunakan Conditional Formatting maupun menggunakan Macro VBA.

    Dan untuk tutorial kali ini, saya menggunakan script Macro VBA agar model warna interior sel lebih bervariatif dengan mengikuti kondisi yang harus dipenuhi sebagai berikut
    Jika sebuah sel berisi angka 0 maka sel tersebut akan berwarna merah, jika diisi hanya berupa karakter spasi saja maka sel akan berwarna kuning, selain dari itu maka warna interior sel akan kembali ke warna asal - termasuk ketika user menghapus isi data dalam sel tersebut menggunakan tombol Delete

    Ok, setidaknya terdapat 4 (empat) buah kondisi yang kita miliki untuk dijadikan sebagai kriteria pewarnaan interior sebuah sel beserta warna dasar font-nya. Dan untuk menjalankan setiap kondisi yang ada ini, saya lebih suka menggunakan Statement IF (meskipun bisa saja menggunakan Select Case). Dan karena model pewarnaannya terjadi setiap kali ada perubahan, maka prosedur yang saya lakukan adalah sebagai berikut :
    1. Aktifkan terlebih dahulu Microsoft Visual Basic dengan menekan tombol pintas Alt+F11
    2. Lanjutkan dengan memilih nama-nama dari Object VBA yang terdapat di pojok kiri atas aplikasi Microsoft Visual Basic Editor.
      Jika perintah hanya ingin terjadi di salah satu lembar kerja saja, maka pilih (klik ganda) nama lembar kerjanya. Namun jika ingin agar perintah dapat dieksekusi di semua lembar kerja maka pilih (klik ganda) objek ThisWorkbook
    3. Sebagai contoh, objek lembar kerja yang akan saya beri perintah pewarnaan interior adalah Sheet1. Maka langkah selanjutnya silahkan alihkan perhatian ke jendela utama aplikasi Microsoft Visual Basic Editor, kemudian pilih objek Worksheet dan Change dari masing-masing menu dari kotak dropDown yang tersedia
      Worksheet chage procedure
    4. Setelah berhasil menentukan jenis prosedur yang akan dieksekusi, selanjutnya adalah tulis kode berikut di dalamnya
      On Error Resume Next
      If Target.Cells = "" Then
      Target.Interior.Color = xlNone
      Target.Font.Color = 1
          ElseIf Len(Trim(Target.Cells)) = 0 Then
          Target.Interior.Color = RGB(250, 250, 100)
              ElseIf Target.Cells = 0 Then
              Target.Interior.Color = RGB(250, 100, 100)
              Target.Font.Color = RGB(255, 255, 255)
          Else
          Target.Interior.Color = xlNone
          Target.Font.Color = 1
      End If
      
      Penjelasan singkat baris kode di atas adalah sebagai berikut
      • Membuat sebuah Statement yang bertujuan untuk tetap melanjutkan perintah jika terdapat error dalam baris kode yang telah dibuat
      • Baris kode inti dari tutorial ini terletak di statement Logika IF yang berbunyi, jika perubahan terhadap sel target berupa :
        • "" artinya kosong, maka warna interior bernilai xlNone atau default
        • Jika Panjang isi sel setelah dihapus karakter spasi yang terdapat diawal teks adalah 0 maka warna interior berubah menjadi warna kuning (kombinasi warna adalah RGB)
        • Jika sel berisi nilai 0 maka warna interior berubah menjadi warna merah sementara warna font menjadi putih
        • Jika kondisi selain dari pada kriteria di atas, maka warna interior kembali ke bentuk asal dan warna font berubah menjadi warna hitam
    5. Rangkaian dari kode-kode di atas jika dieksekusi, maka perubahan akan langsung terlihat dalam lembar kerja dimana kode ini diletakkan.
      warna interior dan font

    Selesai....
    Semoga tutorial singkat dalam mewarnai interior sel setiap kali ada perubahan yang dilakukan, dapat memberi manfaat kepada anda.
    Jangan lupa bookmark situs ini untuk memudahkan anda dalam mengunjungi kami lain waktu. Au revoir

    Tutorial ini memuat Macro VBA, jadi pastikan hasil akhir dari tutorial ini disimpan menggunakan format Excel Macro-Enable Workbook
    .xlsm
    atau Excel Binary Workbook
    .xlsb
  • Kombinasi CheckBox Dan Select Case Untuk Membuka Jendela Dialog Print

    print dialog CheckBox merupakan salah satu objek VBA berbentuk kotak persegi yang dapat memberikan nilai atau hasil Benar dan Salah saja, dimana ketika bernilai benar maka kotak ini akan berisi tanda centang ( ), sementara jika bernilai salah maka ia akan kosong. Dengan kata lain, tanda centang didalam kontrol objek CheckBox bisa digunakan untuk mewakili kata YA dan berlaku juga sebaliknya.

    Untuk menguji hasil yang didapatkan dari checkBox ini sebenarnya sangatlah sederhana dan mudah untuk dilakukan. Untuk mencobanya :
    1. Pilih tab menu Developer kemudian pilih control CheckBox untuk kategori ActiveX dan letakkan didalam lembar kerja Microsoft Excel, ambil contoh Sheet1.
      CheckBox Controls
    2. Selanjutnya silahkan anda klik kanan objek ini dan pilih menu Properties dari jendela pop-up menu yang muncul.
      CheckBox Properti
    3. Didalam jendela properties untuk control checkBox ini, silahkan anda cari sebuah parameter LinkedCell yang masih kosong dan silahkan isi sebuah alamat sel yang nantinya digunakan untuk meletakkan hasil ketika objek CheckBox ini di klik. sebagai contoh, silahkan tulis alamat sel A1.
      CheckBox Linked Cell
    4. Sebelum menguji atau mengklik CheckBox ini, pastikan anda sudah mematikan menu Design Mode yang terdapat di tab menu Developer.
      Design Mode
    Jika langkah-langkah diatas sudah dilakukan dengan benar, dan ketika anda menekan tombol CheckBox, maka sebuah hasil TRUE atau FALSE akan ditampilkan di sel A1 yang sudah dihubungkan dengan CheckBox ini.

    Ok, cara diatas adalah sebuah cara sederhana yang dapat dilakukan hanya sekedar untuk menampilkan nilai TRUE atau FALSE di dalam sebuah sel. Sekarang kita akan mencoba bagaimana mengkombinasikan nilai tersebut untuk membuka jendela dialog print dengan menggunakan statement Select Case yang juga dikombinasikan dengan logika IF.
    1. Silahkan anda buat sebuah control baru yakni CommandButton dan letakkan di lembar kerja yang sudah terdapat control CheckBox yang sudah anda buat sebelumnya
    2. Langkah berikutnya adalah, pastikan anda sudah mengetahui nama yang diberikan untuk CheckBox. Untuk melihat nama dari objek ini, silahkan klik kanan checkBox kemudian pilih menu properties dan lihat kotak disebelah kanan dari parameter (Name), kemudian tutup jendela properties CheckBox
      Nama CheckBox
    3. Selanjutnya klik 2x objek CommandButton untuk langsung menuju jendela Microsoft Visual Basic Editor, yang secara otomatis anda akan dibuatkan sebuah prosedur untuk even Klik yang masih kosong
      Code
    4. Ketik baris kode berikut kedalam prosedur yang sudah dibuat dilangkah sebelumnya
      Select Case CheckBox1
          Case True
              if Application.Dialogs(xlDialogPrinterSetup).Show = true then _
              ActiveSheet.PrintOut
          Case Else
              MsgBox "Silahkan centang CheckBox untuk membuka jendela printer anda"
      End Select
      
      Penjelasan dari baris kode :
      • Select Case CheckBox1
        Adalah sebuah prosedur yang digunakan untuk situasi yang terjadi pada objek yang memiliki nama CheckBox1
      • Case True
        Berisi perintah yang akan di jalankan ketika situasinya adalah benar (TRUE)
      • If Application.Dialogs(xlDialogPrinterSetup).Show = true then _
        Baris kode ini hanya akan diaktifkan ketika kondisi dari CheckBok1 adalah benar, yang mana baris ini berisi bahasa logika sederhana yang berarti jika pengguna memilih salah satu nama printer yang tersedia di jendela dialog printer (xlDialogPrinterSetup), maka perintah selanjutnya akan segera dieksekusi
      • ActiveSheet.PrintOut
        Bertugas untuk mencetak halaman atau lembar kerja aktif ke kertas menggunakan jenis printer yang dipilih pada baris perintah sebelumnya
      • Case Else
        Arti dari baris kode ini adalah, ia akan menjalankan sebuah baris perintah ketika kondisi-kondisi sebelumnya tidak terpenuhi - Dalam kasus ini, Case Else adalah sebuah kondisi yang salah (FALSE)
      • End Select
        Adalah sebuah statement penutup yang wajib dituliskan di bagian akhir.

    Untuk mengetahui hasil akhir dari tutorial ini, berikut tampilannya:
    membuka jendela print dialog

    Selamat.... anda sekarang sudah mengetahui bagaimana caranya menggunakan CheckBox serta bagaimana caranya menampilkan jendela dialog print serta menggunakan statement sederhana dari Select Case. semoga tutorial ini cukup mudah untuk dipahami dan mudah-mudahan ada guna dan manfaatnya.

    Jika anda suka dengan tutorial yang disajikan di website ini, silahkan bookmark atau bisa juga anda klik tombol Subscribe untuk mendapatkan artikel dan tutorial terbaru dari kami, dan silahkan kunjungi kami lain waktu untuk mengetahui kehebatan Microsoft Excel lainnya bersama excelive.com. Adios...

  • Cara Membuat Komentar Sel Berdasarkan Isinya Secara Otomatis

    insert comment in excel Ada cara mudah untuk mengetahui status sel, apakah ia berisi catatan tambahan atau yang lebih umum disebut dengan komentar atau tidak, karena Excel sudah memberikan perbedaan dari sisi tampilannya yakni sel yang berisi komentar memiliki tanda segitiga warna merah yang berada di pojok kanan atasnya. Hal ini tentu bisa sangat mempermudah pengguna untuk mengetahui bahwa sel tersebut pasti berisi informasi tambahan yang dimiliki oleh sel tersebut.

    Informasi tambahan ini bisa dibilang cukup efektif dalam memberikan informasi kepada pengguna tentang isi dari sel tersebut tanpa harus menuliskannya di sel-sel lainnya. seperti, informasi tentang cara menginput nilai, bagaimana dan dari mana isi sel itu didapatkan, formula yang terdapat di dalamnya, dari mana data di input, hingga informasi lainnya yang sifatnya hanya untuk sekedar mengingatkan pengguna lainnya. Dengan demikian, orang lain dapat memahami maksud isi sel tersebut dengan baik.

    Menuliskan komentar untuk sebuah sel-pun sangatlah mudah dilakukan dan hampir setiap pengguna bisa membuatnya, yakni tinggal klik kanan sel yang ingin diberi informasi tambahan, kemudian di menu Pop-Up yang muncul kita tinggal pilih perintah Insert Comment dan langsung bisa mengetikkan informasi yang diinginkan di kotak komentar.
    cara memberi komentar di sel

    Cara ini adalah cara yang biasa dilakukan secara manual. Artinya pengguna harus melakukan beberapa rangkaian aksi agar bisa membuat komentar terhadap sel yang dimaksud, sehingga hal ini tentu saja membutuhkan kejelian untuk memilih sel mana yang harus diberi catatan tambahan, terlebih jika anda mempunyai kriteria isi sel yang memiliki nilai tertentu saja yang harus dibuatkan komentar, ambil contoh seperti ini
    Ketika pengguna mengetik sebuah nilai yang berisi teks seperti, keren, oke, dan excel, maka sel-sel tersebut akan otomotis menampilkan catatan tambahan atau komentar berupa judul komentar dan isi dari sel tersebut, sementara jika nilai dalam sel tersebut selain dari kriteria yang disebutkan, maka status komentar akan dihapus
    Menyisipkan komentar secara otomatis seperti skenario di atas hanya bisa dilakukan menggunakan bantuan Macro VBA dengan menggunakan even Worksheet.Change, Hal ini karena disana terdapat sebuah aksi pengguna mengetik nilai kemudian komentar akan muncul jika sesuai dengan kriteria yang disebutkan.

    Bagaimana membuatnya?!...Jika anda sudah siap, silahkan ikuti panduannya berikut:
    1. Buka jendela Microsoft Visual Basic Editor
    2. Tentukan lembar kerja mana yang akan anda otomatisasi penulisan komentarnya. Ambil contoh, lembar kerja yang akan diotomatisasi adalah lembar kerja atau Sheet1, maka yang perlu anda lakukan adalah klik ganda objek Sheet1 yang ada di jendela VBAProject, kemudian klik even Worksheet dan prosedurnya pilih Change.
      sheet1 worksheet change
    3. Selanjutnya, copy-paste kode berikut ke dalam even yang sudah anda buat dilangkah sebelumnya
      On Error Resume Next
      If Target.Cells Like "*oke*" Then
      Target.ClearComments
      Target.AddComment "Satu :" & vbNewLine & Target.Value
          ElseIf Target.Cells Like "*keren*" Then
          Target.ClearComments
          Target.AddComment "Dua :" & vbCrLf & Target.Value
              ElseIf Target.Cells Like "*excel*" Then
              Target.ClearComments
              Target.AddComment "Tiga :" & vbCrLf & Target.Value
          Else
          Target.ClearComments
      End If
      Penjelasannya kurang lebih seperti berikut :Perintah diawali dengan statement Error, artinya jika terjadi kesalahan akan diabaikan. Selanjutnya adalah serangkaian logika IF bertingkat yang kondisinya sebagai berikut :
      • Setiap sel yang berisi teks (baca:kriteria) seperti, keren, oke, dan excel yang dikombinasikan dengan menggunakan wildcard, maka akan berisi komentar secara otomatis
      • jika ternyata sel-sel yang ditulis terdapat teks seperti di atas maka komentar sebelumnya maka akan dihapus (ClearComments) dan akan diganti dengan komentar baru
      • Komentar yang beru berisi kata-kata yang terdapat di baris AddComment dan dibaris berikutnya ditulis sesuai dengan isi sel yang memuat kriteria di atas
      • Statement untuk menambahkan baris baru adalah vbCrLf
      • Kriteri yang ditulis sifat adalah Case-Sensitive
    Tutorial sejenis ini bisa anda lihat dipembahasan tentang mewarnai sel dan font berdasarkan isi sel .

    Untuk menyempurnakan pembelajaran kali ini, seperti biasa saya akan memperlihatkan rangkaian kode yang telah dibuat dan bagaimana perubahan yang terjadi di lembar kerja
    memilih listbox dengan enter

    Selamat... anda sudah berhasil membuat komentar muncul secara otomatis ketika mengetikkan teks tertentu di lembar kerja, semoga memberikan manfaat untuk anda.
    Jangan lupa bookmark situs ini agar memudahkan anda dalam mengunjunginya lain waktu. Thanks for visit us

    Tutorial ini memuat Macro VBA, jadi pastikan hasil akhir dari tutorial ini disimpan menggunakan format Excel Macro-Enable Workbook
    .xlsm
    atau Excel Binary Workbook
    .xlsb


  • Menggunakan Paremeter GoTo Untuk Melompat ke Kode Marco Lainnya

    statement GoTo Konsep sederhana dari apa yang akan kita pelajari bersama untuk edisi Macro VBA kali ini adalah, menjalankan baris kode dengan cara melewati serangkaian baris kode yang "tidak terpakai" dan mengakhiri atau menghentikannya setelah kode macro yang dimaksud dieksekusi. Hal ini cukup efektif dilakukan jika terdapat beberapa kode yang ingin dijalankan dalam satu module atau prosedur.

    Umumnya, parameter GoTo selalu disandingkan dengan parameter Logika IF yang berfungsi dalam mendeteksi suatu kondisi tertentu.

    Contoh skenario sederhana yang akan kita coba ujikan dalam memahami konsep GoTo adalah sebagai berikut:
    Jika Angka 10 dibagi angka yang berada di sel A1 menghasilkan nilai lebih kecil dari 5 maka Kode Macro yang akan dijalankan adalah perintah Satu, sementara jika hasil pembagian tersebut lebih besar dari 5 maka akan menjalankan Kode Macro Dua. Akan tetapi jika ternyata sel A1 tidak memuat nilai apapun atau kosong, dan atau hasil pembagian Error - maka perintah dengan nama variabel Tiga yang akan dijalankan

    Oke, dalam skenario di atas terdapat 3 (tiga) buah Statement yang akan dijalankan ketika kondisi terpenuhi, antara lain:
    Satu : Dijalankan ketika hasil pembagian lebih kecil dari 5
    Dua : Dijalankan ketika hasilnya adalah lebih besar dari 5
    Tiga : Dijalankan jika terjadi error atau sel A1 kosong
    dan, satu lagi statement yang harus ditulis yakni :
    Akhir : Bertugas untuk mengakhiri rangkaian parameter GoTo

    Dari ke-empat statement tersebut, maka ketika kita merangkainya dalam sebuah module VBA akan tampak kurang lebih seperti ini
    Sub CekGoTo()
    On Error GoTo Tiga
    isi = [a1]
    If 5 / isi < 5 Then
        GoTo Satu
        Else
        GoTo Dua
    End If
    
    Satu:
    MsgBox "nilai lebih kecil dari 5"
    GoTo Akhir
    
    Dua:
    MsgBox "nilai lebih besar dari 5 " 
    GoTo Akhir
    
    Tiga:
    MsgBox "error atau kosong"
    GoTo Akhir
    
    Akhir:
    End Sub
    Selanjutnya tutup jendela Microsoft Visual Basic Editor atau bisa dilakukan dengan menekan tombol pintas Alt+Q untuk langsung menuju ke lembar kerja Microsoft Excel. Di dalam lembar kerja yang sedang aktif, tambahkan sebuah Form Control berupa Button yang bisa anda akses dari Tab Menu Developer di bagian Insert - kemudian pilih kode yang akan dijalankan, untuk contoh kasus ini kode Macro adalah CekGoTo
    Insert Button on Sheet

    Tujuan dari dibuatnya Button adalah sekedar untuk memudahkan dalam mengecek hasil yang didapatkan, sehingga tidak harus bolak-balik membuka antar jendela aplikasi Excel dangan jendela aplikasi Visual Basic Editor. Dan hasil akhir dari apa yang kita kerjakan sesuai dengan panduan di atas akan tampak dalam ilustrasi berikut ini:
    Menggunakan parameter GoTo

    Selesai...
    Semoga panduan dalam menggunakan parameter GoTo ini cukup mudah untuk dipahami. Untuk hasil lain dari pengaplikasian parameter GoTo dibahas di dalam tutorial ini, silahkan anda cek dan pahami.
    Akhir kata, semoga kehadiran excelive bisa memberikan wawasan baru dalam mengolah angka serta dalam mengoperasikan Microsoft Excel khususnya dalam merancang kode Macro VBA. Gracias por visitar

    Tutorial ini memuat Macro VBA, jadi pastikan hasil akhir dari tutorial ini disimpan menggunakan format Excel Macro-Enable Workbook
    .xlsm
    atau Excel Binary Workbook
    .xlsb

  • Cara Mendeteksi Nilai Ganjil atau Genap Dengan Macro VBA Excel

    Mencari angka ganjil genap dengan VBA Jika ada cara yang mudah untuk dilakukan, ngapain harus menempuhnya dengan cara yang sulit?. Barangkali ini adalah sebuah kalimat pembuka yang sesuai untuk tutorial kali ini.

    Ya, memang dalam Microsoft Excel ada sebuah pandangan atau pola berfikir bahwa kebutuhan mengolah angka harusnya bisa diselesaikan hanya dengan menggunakan Formula, akan tetapi jika dengan menggunakan cara ini tidak berhasil menyelesaikan masalah dalam hal mengolah angka tersebut, maka pilihannya akan jatuh pada Macro VBA, dan untuk pilihan Macro VBA bukan sebuah keharusan atau kewajiban. Mungkin gagalnya menyelesaikan masalah tersebut terletak pada ketidaktahuan pengguna semata. Sementara bagi beberapa pengguna Microsoft Excel lainnya, mereka memiliki anggapan bahwa antara Formula Microsoft Excel dan Macro VBA adalah saling melengkapi.

    Contoh yang paling simpel yang dapat dilakukan hanya dengan menggunakan Formula Excel adalah ketika kita ingin mendeteksi apakah nilai yang terdapat dalam sebuah sel berisi nilai ganjil atau genap. Menyelesaikan kasus seperti ini memang sangat cepat dan sangat mudah dilakukan dengan menggunakan Formula, karena Microsoft Excel sudah menyediakan formulanya.

    Untuk mendeteksi nilai genap, maka formula yang digunakan adalah =ISEVEN, sementara untuk mendeteksi sebuah sel yang berisi nilai ganjil menggunakan =ISODD. Contoh penggunaannya seperti gambar berikut :
    formula cek ganjil-genap
    Kedua formula tersebut akan menghasilkan nilai TRUE jika sel tersebut memuat informasi yang terkait, dan akan menghasilkan nilai FALSE jika salah.

    Sederhananya penulisan kedua formula di atas, ternyata tidak berlaku jika anda ingin mendeteksi nilai ganjil atau genap menggunakan Macro VBA. Dan setidaknya, anda harus sedikit memiliki modal pengetahuan tentang Logika IF jika ingin tetap melakukannya melalui Macro VBA. Untungnya saya sudah menyiapkan beberapa baris Macro VBA yang bisa anda coba untuk mendeteksi nilai ganjil atau genap.
    Sub ganjil_genap()
    For i = 3 To [a3].End(xlDown).Row
    If Cells(i, 1) Mod 2 = 0 Then
        MsgBox "Sel A" & i & " (" & Cells(i, 1) & ") = Genap"
        Else
        MsgBox "Sel A" & i & " (" & Cells(i, 1) & ") = Ganjil"
    End If
    Next
    End Sub
    Parameter penting dari script kode di atas terletak pada operator MOD. Salah satu jenis operator yang juga terdapat di formula Excel ini digunakan untuk membagi dua angka dan hanya mengembalikan sisanya sebagai hasil akhir, dengan kata lain operator ini saya fungsikan untuk mendeteksi nilai tersebut ganjil atau genap. Sementara untuk hasil yang didapatkan dari operator MOD adalah berupa angka. Lebih jelasnya, lihat bagaimana menggunakan Formula ODD dalam lembar kerja Microsoft Excel berikut :
    Formula

    Kenapa hasilnya berupa angka 0 dan 1 ? Bagaimana cara menghitungnya!!
    Salah satu penyebabnya dikarenakan saya menggunakan angka 2 sebagai pembaginya, tujuannya adalah hasil yang nantinya didapatkan berupa dua angka saja, yakni angka 0 dan 1. Bagaimana cara kerja operator atau formula MOD ini?, Ok, kita ambil salah satu baris dari gambar di atas, sebagai contoh baris ke 4 yang memuat nilai 20, dan penyelesaiannya adalah seperti berikut :
    =20-2*(pembulatan dari hasil(20/2)
    =20-2*10
    =20-20
    =0
    Sekarang mari kita coba dengan baris yang lain, ambil contoh baris ke-7 yang berisi angka 59, dan cara menghitungnya sama dengan cara di atas ya.
    =59-2*(pembulatan dari hasil(59/2)
    =59-2*29
    =59-58
    =1

    Dalam script kode Macro VBA yang saya tulis di atas, syntax penulisan operator MOD tidak seperti ketika kita menulisnya di lembar kerja Microsoft Excel sebagai formula, ada sedikit perbedaan dalam hal menaruh angka yang ingin di bagi dan angka pembaginya - sehingga jika Formula Mod diterjemahkan ke dalam Macro VBA, maka syntax penulisannya akan menjadi seperti 59 Mod 2.

    Dan akhirnya, hasil kode Macro VBA di atas yang sudah lulus uji akan tampak seperti tampilan di bawah ini :
    ganjil genap Macro VBA

    Selamat...anda sudah berhasil mengecek sebuah nilai ganjil atau genap yang terdapat di lembar kerja menggunakan Macro VBA excel. Semoga tutorial edisi kali ini membawa manfaat untuk anda. Jangan lupa untuk selalu mengunjungi situs ini secara berkala agar anda tidak ketinggalan tutorial Microsoft Excel lainnya. Gracias

  • Still haven't found what are you looking for

    We have provided a complete list of articles on this site to make it easier for you and giving the best solution for your excel issues

    VISIT LINK
    loading...
    DMCA.com Protection Status

    excelive.com
    is a blogger resources site who provides best excel tutorial based on daily needs. The main mission of excelive is to share our little experience in excel to deliver best time killer for your excel issues.
    T.O.S
    Term of service

    Read More
    Download Area
    to complete all excel lessons, we have provided a download link for you Find Here
    Copyright © 2016 - excelive.com. Some rights reserved.
    Menyalin sebagian atau keseluruhan materi situs hanya diperbolehkan dengan tautan balik terbuka ke sumbernya.
    equipped with by blogger