Fungsi VBA

Fungsi VBA

Fungsi Excel VBA

Kita telah melihat bahwa kita dapat menggunakan fungsi lembar kerja di VBA, yaitu fungsi lembar kerja Excel dalam pengkodean VBA menggunakan metode Application.Worksheet. Tapi bagaimana kita menggunakan fungsi VBA di Excel dengan baik? Fungsi seperti itu disebut fungsi yang ditentukan pengguna. Saat pengguna membuat fungsi di VBA, kita bisa menggunakannya di lembar kerja Excel.

Meskipun kami memiliki banyak fungsi di Excel untuk memanipulasi data, terkadang kami perlu melakukan beberapa penyesuaian pada alat untuk menghemat waktu karena kami melakukan beberapa tugas berulang kali. Misalnya, kami memiliki fungsi yang telah ditentukan sebelumnya di excel seperti SUM, COUNTIFCOUNTIFFungsi COUNTIF di Excel menghitung jumlah sel dalam rentang berdasarkan kriteria yang telah ditentukan sebelumnya. Ini digunakan untuk menghitung sel yang menyertakan tanggal, angka, atau teks. Misalnya, COUNTIF(A1:A10,’Trump’) akan menghitung jumlah sel dalam rentang A1:A10 yang berisi teks ‘Trump’ baca selengkapnya, SUMIFSUMIFFungsi SUMIF Excel menghitung jumlah rentang sel berdasarkan yang diberikan kriteria. Kriteria dapat mencakup tanggal, angka, dan teks. Misalnya, rumus ‘=SUMIF(B1:B5, ‘<=12′)’ menambahkan nilai dalam rentang sel B1:B5, yang kurang dari atau sama dengan 12. baca lebih lanjut, COUNTIFS,”COUNTIFS,”” COUNTIFSBaca selengkapnya VLOOKUPVLOOKUPFungsi excel VLOOKUP mencari nilai tertentu dan mengembalikan kecocokan yang sesuai berdasarkan pengenal unik. Pengidentifikasi unik secara unik terkait dengan semua catatan database. Misalnya, ID karyawan, nomor daftar siswa, nomor kontak pelanggan, alamat email penjual, dll., adalah pengidentifikasi unik. baca selengkapnya, INDEX, MATCH di excelMATCH Di ExcelFungsi MATCH mencari nilai tertentu dan mengembalikan posisi relatifnya dalam rentang sel tertentu. Outputnya adalah posisi pertama yang ditemukan untuk nilai yang diberikan. Menjadi fungsi pencarian dan referensi, ini berfungsi untuk pencocokan tepat dan perkiraan. Misalnya, jika rentang A11:A15 terdiri dari angka 2, 9, 8, 14, 32, rumus ‘MATCH(8,A11:A15,0)’ mengembalikan 3. Hal ini karena angka 8 berada pada urutan ketiga posisi. baca lebih lanjut, dll., tetapi kami melakukan beberapa tugas setiap hari yang satu perintah atau fungsinya tidak tersedia di Excel. Dengan menggunakan VBA, kita dapat membuat User Defined Functions (UDFUDFUser Defined Function in VBA adalah sekelompok perintah yang disesuaikan yang dibuat untuk memberikan hasil tertentu. Ini adalah fleksibilitas yang diberikan kepada pengguna untuk mendesain fungsi yang mirip dengan yang sudah disediakan di Excel.baca lebih) fungsi kustom.

Anda bebas menggunakan gambar ini di situs web Anda, templat, dll., Harap berikan kami tautan atribusiBagaimana Memberikan Atribusi? Tautan Artikel menjadi Hyperlink
Misalnya: Sumber: Fungsi VBA (w allstreetmojo.com)

Apa yang dilakukan Fungsi VBA?

  • Mereka melakukan perhitungan tertentu; dan
  • Mengembalikan nilai

Di VBA, saat mendefinisikan fungsi, kami menggunakan sintaks berikut untuk menentukan parameter dan tipe datanya.

Tipe data disini adalah tipe dari dataTipe Data Berikut Adalah Tipe DataTipe data adalah karakter inti dari setiap variabel, ini mewakili tipe nilai apa yang dapat kita simpan dalam variabel dan berapa batasan atau rentang nilai yang dapat disimpan dalam variabel, tipe data adalah VBA bawaan dan pengguna atau pengembang perlu mengetahui tipe nilai mana yang dapat disimpan di tipe data mana. Tipe data yang ditetapkan ke variabel memberi tahu ukuran penyimpanan kompiler dari variabel tersebut. Baca lebih lanjut variabel akan disimpan. Itu dapat menyimpan nilai apa pun (tipe data atau objek kelas).

Kita dapat menghubungkan objek dengan properti atau metodenya menggunakan simbol titik atau titik (.).

Bagaimana Cara Membuat Fungsi Kustom menggunakan VBA?

Contoh

Misalkan kita memiliki data berikut dari sebuah sekolah di mana kita perlu menemukan nilai total yang dicetak oleh siswa, hasil, dan nilai.

Singkatnya, nilai yang dicetak oleh seorang siswa di semua mata pelajaran, kami memiliki fungsi bawaan, SUM. Namun, penentuan nilai dan hasil berdasarkan kriteria yang ditetapkan sekolah tidak tersedia di Excel secara default.

Itulah alasan mengapa kita perlu membuat fungsi yang ditentukan pengguna.

Langkah 1: Temukan Nilai Total

Pertama, kita akan menemukan nilai total menggunakan fungsi SUM di excelFungsi SUM Di ExcelFungsi SUM di excel menambahkan nilai numerik dalam rentang sel. Dikategorikan di bawah fungsi Matematika dan Trigonometri, dimasukkan dengan mengetikkan ‘=SUM’ diikuti dengan nilai yang akan dijumlahkan. Nilai yang diberikan ke fungsi dapat berupa angka, referensi sel, atau rentang.Baca lebih lanjut.

Kemudian, tekan tombol “Enter” untuk mendapatkan hasilnya.

Seret rumus ke seluruh sel.

Nah, untuk mengetahui hasilnya (lulus, gagal, atau esensial mengulang), kriteria yang ditetapkan oleh sekolah adalah itu.

  • Misalkan seorang siswa mendapat nilai lebih dari atau sama dengan 200 sebagai nilai total dari 500. Selain itu, misalkan mereka juga tidak gagal dalam mata pelajaran apa pun (mendapat nilai lebih dari 32 dalam setiap mata pelajaran), seorang siswa dinyatakan lulus.
  • Jika nilai siswa lebih dari atau sama dengan 200 tetapi gagal dalam 1 atau 2 mata pelajaran, maka siswa akan mendapatkan ‘Essential Repeat’ pada mata pelajaran tersebut.
  • Jika siswa mendapat nilai kurang dari 200 atau gagal dalam 3 mata pelajaran atau lebih, maka siswa tersebut gagal.
Langkah 2: Buat Fungsi ResultOfStudent

Untuk membuat fungsi bernama ‘ResultOfStudent,’ kita perlu membuka ‘Editor Visual Basic’ dengan menggunakan salah satu metode di bawah ini:

  • Menggunakan tab Pengembang excel.Tab Pengembang Excel.Mengaktifkan tab pengembang di excel dapat membantu pengguna melakukan berbagai fungsi untuk VBA, Makro dan Add-in seperti mengimpor dan mengekspor XML, mendesain formulir, dll. Tab ini dinonaktifkan secara default di excel ; jadi, pengguna harus mengaktifkannya terlebih dahulu dari menu opsi.baca lebih lanjut

Jika tab Pengembang tidak tersedia di MS Excel, maka kita bisa mendapatkannya dengan menggunakan langkah-langkah berikut:

  • Klik kanan di mana saja pada pita. Kemudian, pilih Sesuaikan Pita di excelRibbon Di ExcelRibbon di Excel 2016 dirancang untuk membantu Anda menemukan perintah yang ingin digunakan dengan mudah. Pita diatur ke dalam grup logis yang disebut Tab, yang masing-masing memiliki rangkaian fungsinya sendiri.baca lebih lanjut’ .

Saat kami memilih perintah ini, kotak dialog ‘Opsi Excel’ terbuka.

  • Kita perlu mencentang kotak untuk ‘Pengembang’ untuk mendapatkan tab.

  • Menggunakan tombol pintasan, Alt+F11.

  • Saat kita membuka editor VBA Editor VBA Editor Visual Basic for Applications adalah antarmuka scripting. Skrip ini terutama bertanggung jawab atas pembuatan dan eksekusi makro dalam perangkat lunak Microsoft. Baca lebih lanjut, kita perlu memasukkan modul dengan masuk ke menu Sisipkan dan memilih modul.

  • Kita perlu menempelkan kode berikut ke dalam modul.

Fungsi ResultOfStudents(Tandai Sebagai Rentang) Sebagai String Dim mycell Sebagai Range Dim Total Sebagai Integer Dim CountOfFailedSubject Sebagai Integer Untuk Setiap mycell Dalam Marks Total = Total + mycell.Value Jika mycell.Value < 33 Maka CountOfFailedSubject = CountOfFailedSubject + 1 End If mycell Berikutnya Jika Total >= 200 Dan CountOfFailedSubject <= 2 Dan CountOfFailedSubject > 0 Kemudian ResultOfStudents = “Essential Repeat” ElseIf Total >= 200 Dan CountOfFailedSubject = 0 Kemudian ResultOfStudents = “Lulus” Else ResultOfStudents = “Gagal” End If End Fungsi

Fungsi di atas mengembalikan hasil untuk siswa.

Kita perlu memahami bagaimana kode ini bekerja.

Pernyataan pertama, ‘Function ResultOfStudents(Marks As Range) As String,’ mendeklarasikan fungsi bernama ‘ResultOfStudents’ yang akan menerima rentang sebagai input untuk tanda dan mengembalikan hasilnya sebagai string.

Dim mycell As Range Dim Total As Integer Dim CountOfFailedSubject As Integer

Ketiga pernyataan ini mendeklarasikan variabel, yaitu,

  • ‘myCell’ sebagai Rentang,
  • ‘Total’ sebagai Integer (untuk menyimpan nilai total yang dicetak oleh siswa),
  • ”CountOfFailedSubject’ adalah Integer (untuk menyimpan jumlah mata pelajaran yang gagal dikerjakan siswa).

Untuk Setiap mycell Dalam Tanda Total = Total + mycell.Value Jika mycell.Value < 33 Maka CountOfFailedSubject = CountOfFailedSubject + 1 End If Next mycell

Kode ini memeriksa setiap sel dalam rentang ‘ Tanda’ . Itu menambahkan nilai setiap sel dalam variabel ‘Total’ . Jika nilai sel kurang dari 33, tambahkan 1 ke variabel ‘CountOfFailedSubject’ .

Jika Total >= 200 Dan CountOfFailedSubject <= 2 Dan CountOfFailedSubject > 0 Maka ResultOfStudents = “Essential Repeat” ElseIf Total >= 200 Dan CountOfFailedSubject = 0 Maka ResultOfStudents = “Lulus” Else ResultOfStudents = “Gagal” End If

Kode ini memeriksa nilai ‘Total’ dan ‘CountOfFailedSubject’ dan meneruskan Laporan Esensial’, ‘Lulus’, atau ‘Gagal’ ke ‘ResultOfStudents’.

Langkah 3: Terapkan Fungsi ResultOfStudents untuk Mendapatkan Hasil

Fungsi ResultOfStudents mengambil nilai, yaitu memilih 5 nilai yang dicetak oleh siswa.

Sekarang, pilih rentang sel, B2: F2.

Seret rumus ke seluruh sel.

Langkah 4: Buat Fungsi ‘GradeForStudent’ untuk mendapatkan Nilai

Sekarang untuk mengetahui nilai siswa, kita akan membuat satu lagi fungsi bernama ‘GradeForStudent.’

Kodenya adalah:

Fungsi Grad eForStudent(TotalMarks Sebagai Integer, Hasil Sebagai String) Sebagai String Jika TotalMarks > 440 Dan TotalMarks <= 500 Dan ((Hasil = “Lulus” Atau Hasil = “Essential Repeat”) Atau Hasil = “Essential Repeat”) Maka GradeForStudent = “A” ElseIf TotalMarks > 380 Dan TotalMarks <= 440 And (Result = “Lulus” Atau Hasil = “Essential Repeat”) Kemudian GradeForStudent = “B” ElseIf TotalMarks > 320 Dan TotalMarks <= 380 Dan (Hasil = “Lulus” Atau Hasil = “Essential Repeat”) Kemudian GradeForStudent = “C” ElseIf TotalMarks > 260 And TotalMarks <= 320 And (Result = “Lulus” Atau Result = “Essential Repeat”) Kemudian GradeForStudent = “D” ElseIf TotalMarks >= 200 Dan TotalMarks <= 260 Dan (Result = “Lulus” Atau Hasil = “Essential Repeat”) Kemudian GradeForStudent = “E” ElseIf TotalMarks < 200 Atau Hasil = “Gagal” Kemudian GradeForStudent = “F” End If End Fungsi

Fungsi ini memberikan ‘Nilai’ kepada siswa berdasarkan ‘Nilai Total’ dan ‘Hasil.’

Kita perlu menulis rumus dan membuka tanda kurung di sel H2. Tekan Ctrl+Shift+A untuk mengetahui argumennya.

Fungsi GradeForStudent menggunakan nilai Total (jumlah nilai) dan hasil siswa sebagai argumen untuk menghitung nilai.

Sekarang, pilih sel individual, G2 dan H2 .

Sekarang, kita perlu menekan Ctrl+D setelah memilih sel untuk menyalin rumus.

Kita dapat menonjolkan nilai kurang dari 33 dengan warna latar belakang merah untuk mengetahui mata pelajaran yang gagal.

Artikel yang Direkomendasikan

Artikel ini adalah panduan untuk Fungsi VBA. Di sini, kita membahas pembuatan fungsi kustom menggunakan kode VBA, contoh praktis, dan template Excel yang dapat diunduh. Anda dapat mempelajari lebih lanjut tentang VBA dari artikel berikut:-

  • VBA IIFVBA IIFKondisi “VBA IIF” mengevaluasi ekspresi yang disediakan atau uji logis dan mengembalikan BENAR atau SALAH sebagai hasilnya.baca lebih lanjut
  • SUMIF Dengan VLOOKUPSUMIF Dengan VLOOKUPSUMIF digunakan untuk menjumlahkan sel berdasarkan beberapa kondisi, yang membutuhkan argumen rentang, kriteria, atau kondisi, dan sel untuk dijumlahkan. Ketika ada sejumlah besar data yang tersedia di beberapa kolom, kita dapat menggunakan VLOOKUP sebagai kriterianya.baca lebih lanjut
  • Excel SUMIF Antara Dua TanggalExcel SUMIF Antara Dua Tanggal Ketika kita ingin bekerja dengan data yang memiliki nomor seri dengan tanggal yang berbeda dan syarat untuk menjumlahkan nilai berdasarkan antara dua tanggal, kita menggunakan Sumif antara dua tanggal. Baca selengkapnya
  • Excel VBA Hapus BarisExcel VBA Hapus BarisDalam VBA, untuk menghapus perintah dan menghapus baris apa pun secara bersamaan, caranya adalah kita memberikan referensi satu baris jika kita perlu menghapus satu baris. Namun, untuk banyak kolom, kami dapat menyediakan banyak referensi baris.baca lebih lanjut

Related Posts

Tinggalkan Balasan