Cara menggunakan Function Procedure VBA Excel #09

Cara menggunakan Function Procedure VBA Excel

Setelah memahami bagaimana membuat function procedure pada VBA Excel, tentunya kita juga harus tahu bagaimana Tutorial menjalankan, memangggil atau mengeksekusi prosedur fungsi yang telah dibentuk.

Sebelumnya kita juga sudah mempelajari 9 Tutorial menjalankan sub procedure, apakah untuk function procedure Tutorialnya juga sama?

Sayangnya Cara untuk menggunakan function procedure sedikit terbatas. Secara umum anda mampu menggunakan 3 alternatif Cara berikut untuk menjalankan atau memanggil sebuah function procedure:
  1. Memanggil funtion procedure dari procedure lain.
  2. Menjalankan function procedure dari Immediate Window.
  3. Menggunakan function procedure sebagai rumus excel.

Pada seri panduan Excel VBA Dasar kali ini kita akan membahas ketiga Tutorial tersebut.


Sebelum melanjutkan pembahasan perihal Cara menggunakan prosedur fungsi pada VBA Excel ini, silahkan anda buat dulu sebuah standart module gres kemudian buatlah sebuah function procedure seakan-akan berikut pada modul tersebut.

Function DISKON(jumlah As Long, harga As Currency, Optional persen As Double = 0.05)
    'Deklarasi variabel jmlDiskon
    Dim jmlDiskon As Currency

    'Menghitung jumlah diskon
    jmlDiskon = jumlah * harga * persen

    'Assign return value diskon kepada fungsi DISKON
    DISKON = jmlDiskon
End Function

Anggap saja UDF atau custom function di atas dipakai untuk menghitung diskon penjualan barang dengan menggunakan 3 parameter atau argumen:
  1. jumlah: menunjukkan jumlah barang yang terjual.
  2. harga: memperlihatkan harga satuan barang yang dijual.
  3. persen: menunjukkan besaran diskon yang mana nilai defaultnya ialah 0,05 atau 5%.

Umumnya untuk mendapatkan diskon ada kriteria tertentu yang harus terpenuhi, namun supaya lebih sederhana diskon penjulana disini kita hitung tanpa kriteria apapun.

Jika sudah dibuat mari kita lanjutkan pada pembahasan Tutorial menggunakan function procedure tersebut.

Cara Memanggil Function Procedure Dari Procedure Yang Lainnya


Cara pertama yang mampu kita gunakan untuk memanggil atau menjalankan function procedure adalah dengan memanggilnya dari procedure lain.

Cara yang umum digunakan adalah dengan sajianliskan baris aba-aba yang berisi nama fungsi beserta nilai-nilai argumennya. contohnya berikut ini:

Sub munculkanDiskon()
    MsgBox DISKON(10, 1500, 0.25)
End Sub

Jika anda menjalankan mekanismee diatas karenanya ialah kotak pesan berikut:

Memanggil Function Procedure Dari Procedure Lain

Angka 3750 pada kotak pesan tersebut didapatkan dari hasil kalkulasi oleh fungsi DISKON (10*1500*25%).

Cara lain adalah dengan menggunakan Application.Run method seolah-olah berikut ini:

Sub tampilkanDiskon()
    MsgBox Application.Run("DISKON", 10, 1500, 0.25)
End Sub

Prosedure di atas akan menghasilkan kotak pesan yang sama seolah-olah sebelumnya.

Pada VBE, argumen fungsi dipisahkan dengan koma(,), sedangkan pemisah desimal mengunakan titik(.) meskipun menggunakan pengaturan regional Indonesia

Cara Menjalankan Function Procedure Dari Immediate Window


Cara lain untuk menjalankan sebuah function procedure adalah dengan memanggilnya dari Immediate Window. Sebelum mampu menggunakannya tentunya anda harus menampilkan dulu Immediate Window yang sudah kita bahas pada seri sebelumnya.

Metode ini biasanya dipakai untuk melaksanakan debug instruksi VBA, dengan kata lain untuk mengusut atau menguji apakah isyarat VBA yang kita buat sudah sesuai keinginan atau ada error tertentu.

Cara yang biasa digunakan adalah dengan memakai printah "Print" lalu diikuti nama fungsi dan argumennya lalu tekan Enter seakan-akan berikut ini:

Memanggil Function Procedure Dari Immediate Window

Anda juga mampu menggantikan perintah "Print" dengan tanda tanya (?) seolah-olah ini:

Memanggil Function Procedure Dari Jendela Immediate

Nah, simpel bukan?

Cara menggunakan Function Procedure Sebagai Rumus Excel


Pada pembahasan ihwal function procedure, disebutkan bahwa function procedure juga lazim disebut sebagai Custom function dan juga sebagai User Defined Funtion (UDF).

Hal ini lebih di sebabkan lantaran function procedure mampu kita perlakukan layaknya fungsi bawaan excel semisal fungsi SUM, AVERAGE, VLOOKUP, dan lain sebagainya.

Jadi kita juga mampu menggunakan function procedure sebagai sebuah rumus excel bahkan mampu juga dipakai pada conditional formatting.

Cara menggunakannya juga seolah-olah saat anda memakai fungsi default excel, yaitu dengan mengetikkan tanda sama dengan (=) kemudian diikuti dengan nama fungsi, lengkap dengan argumen-argumentnya.

Berikut acuannya:

=DISKON(10; 1500; 0,25)

Cara menggunakan UDF (User Defined Function) VBA Excel

Contoh di atas dibentuk dengan excel 2016 yang dengan pengaturan regional setting Indonesia yang memakai titik koma(;) sebagai pemisah argumen dan karakter koma(,) sebagai pemisah desimal

Cara di atas berlaku jikalau function procedure yang anda buat anda gunakan pada file yang sama.

Fungsi DISKON diatas, kalau anda gunakan untuk file yang lain akan menghasilkan error #NAME? seakan-akan ini:

Custom Function Error #NAME?

Jika bermaksud memakainya pada workbook yang berbeda maka ikut sertakan juga nama file yang menyimpan function procedure DISKON seperti ini.

='Kelas Excel-Latihan VBA 6.xlsm'!DISKON(10; 1500; 0,25)

Cara memakai UDF (User Defined Function) VBA Excel

Cara seakan-akan diatas berlaku jikalau file "Kelas Excel-Latihan VBA 6.xlsm" dalam kondisi open(terbuka).

Jika tidak ingin memakai nama file anda dapat juga menetapkan acuan pada file/workbook excel yang menyimpan fungsi DISKON tersebut yang bisa anda atur pada Menu Tools VBE.

Tools References Visual Basic Editor

Masih ada pertanyaan? Silahkan sampaikan pada kolom komentar yang tersedia.

Komentar

Postingan populer dari blog ini

Panduan VBA Excel: VBE (Visual Basic Editor) Excel #02

Cara Mengatur Format Tampilan (Layout) Pada PivotTable Excel