Subrutin VBA Excel: Cara Memanggil Sub dalam VBA dengan Contoh

Isi kandungan:

Anonim

Apa itu Subrutin di VBA?

A Subrutin dalam VBA adalah sekeping kod yang melaksanakan tugas tertentu yang dinyatakan dalam kod tetapi tidak mengembalikan hasil atau nilai. Subrutin digunakan untuk memecah kod besar menjadi bahagian kecil yang dapat dikendalikan. Subrutin dapat dipanggil berulang kali dari mana saja dalam program ini.

Katakan anda telah membuat antara muka pengguna dengan kotak teks untuk menerima data input pengguna. Anda boleh membuat subrutin yang membersihkan kandungan kotak teks. Subrutin Panggilan VBA sesuai dalam senario seperti itu kerana anda tidak mahu memberikan hasil.

Dalam tutorial VBA ini, anda akan belajar-

  • Mengapa menggunakan Subrutin
  • Peraturan penamaan Subrutin dan Fungsi
  • Sintaks Subrutin VBA
  • Cara Memanggil Sub di VBA

Mengapa menggunakan Subrutin

  • Pecahkan kod menjadi kod terkawal kecil : Program komputer rata-rata mempunyai beribu-ribu baris kod sumber. Ini memperkenalkan kerumitan. Subrutin membantu menyelesaikan masalah ini dengan memecah program menjadi sebahagian kecil kod yang dapat dikendalikan.
  • Kegunaan semula kod . Katakan anda mempunyai program yang perlu mengakses pangkalan data, hampir semua tetingkap dalam program perlu berinteraksi dengan pangkalan data. Daripada menulis kod yang berasingan untuk tetingkap ini, anda boleh membuat fungsi yang menangani semua interaksi pangkalan data. Anda kemudian boleh memanggilnya dari tetingkap mana sahaja yang anda mahukan.
  • Subrutin dan fungsi mendokumentasikan diri . Katakan anda mempunyai fungsi mengiraLoanInterest dan satu lagi yang mengatakan connectToDatabase. Dengan hanya melihat nama subrutin / fungsi, pengaturcara akan dapat mengetahui apa yang dilakukan oleh program.

Peraturan penamaan Subrutin dan Fungsi

Untuk menggunakan subrutin dan fungsi, ada sekumpulan peraturan yang harus diikuti.

  • Nama fungsi panggilan subrutin atau VBA tidak boleh berisi ruang
  • Sub Call VBA Excel atau nama fungsi harus bermula dengan huruf atau garis bawah. Ia tidak boleh bermula dengan nombor atau watak khas
  • Subrutin atau nama fungsi tidak boleh menjadi kata kunci. Kata kunci adalah perkataan yang mempunyai makna khas dalam VBA. Kata-kata seperti Peribadi, Sub, Fungsi, dan Akhir, dll adalah semua contoh kata kunci. Penyusun menggunakannya untuk tugas-tugas tertentu.

Sintaks Subrutin VBA

Anda perlu mengaktifkan tab Pembangun di Excel untuk mengikuti contoh ini. Sekiranya anda tidak tahu cara mengaktifkan tab Developer kemudian baca tutorial mengenai VBA Operators

DI SINI dalam sintaks,

Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String)'do somethingEnd Sub

Penjelasan sintaks

Kod

Tindakan

  • "Sub Peribadi mySubRoutine (…)"
  • Di sini kata kunci "Sub" digunakan untuk menyatakan subrutin yang bernama "mySubRoutine" dan memulakan badan subrutin.
  • Kata kunci Peribadi digunakan untuk menentukan ruang lingkup subrutin
  • "ByVal arg1 As String, ByVal arg2 As String":
  • Ia menyatakan dua parameter jenis data rentetan nama arg1 dan arg2
  • "Sub Akhir"
  • "End Sub" digunakan untuk mengakhiri badan subrutin

Subrutin berikut menerima nama depan dan belakang dan memaparkannya dalam kotak mesej.

Sekarang kita akan memprogram dan melaksanakan Sub Prosedur ini. Mari lihat ini.

Cara Memanggil Sub di VBA

Berikut adalah proses langkah demi langkah mengenai cara Memanggil Sub dalam VBA:

  1. Reka bentuk antara muka pengguna dan tetapkan sifat untuk kawalan pengguna.
  2. Tambahkan subrutin
  3. Tuliskan kod peristiwa klik untuk butang arahan yang memanggil subrutin
  4. Uji aplikasi

Langkah 1) Antara Muka Pengguna

Reka bentuk antara muka pengguna seperti yang ditunjukkan dalam gambar di bawah

Tetapkan sifat berikut. Harta yang kita tetapkan

S / N Kawal Harta tanah Nilai
1 Butang Perintah1 Nama btnDisplayFullName
2 Kapsyen Subrutin Nama Penuh

Antaramuka anda kini kelihatan seperti berikut

Langkah 2) Tambahkan subrutin

  1. Tekan Alt + F11 untuk membuka tetingkap kod
  2. Tambahkan subrutin berikut
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String)MsgBox firstName & " " & lastNameEnd Sub

DI SINI dalam kod,

Kod

Tindakan

  • "Sub SubFailName Peribadi (…)"
  • Ia mengisytiharkan subrutinineFullName peribadi yang menerima dua parameter rentetan.
  • "ByVal firstName As String, ByVal lastName Sebagai String"
  • Ia menyatakan dua pemboleh ubah parameter firstName dan lastName
  • MsgBox nama pertama & "" & nama akhir "
  • Ini memanggil fungsi built-in MsgBox untuk memaparkan kotak mesej. Ia kemudian meneruskan pemboleh ubah 'firstName' dan 'lastName' sebagai parameter.
  • The Ampersand "&" digunakan untuk merangkaikan dua pembolehubah dan menambah ruang kosong di antara mereka.

Langkah 3) Memanggil subrutin dari acara klik butang arahan.

  • Klik kanan pada butang arahan seperti yang ditunjukkan pada gambar di bawah. Pilih Lihat Kod.
  • Editor kod akan dibuka

Tambahkan kod berikut dalam penyunting kod untuk acara klik pada butang arahan btnDisplayFullName.

Private Sub btnDisplayFullName_Click()displayFullName "John", "Doe"End Sub

Tetingkap kod anda kini akan kelihatan seperti berikut

Simpan perubahan dan tutup tetingkap kod.

Langkah 4) Menguji kod

Pada bar alat pemaju letakkan mod reka bentuk 'mati'. Seperti yang ditunjukkan di bawah.

Langkah 5) Klik pada butang arahan 'FullName Subroutine'.

Anda akan mendapat keputusan berikut

Muat turun Kod Excel di atas

Ringkasan:

  • Subrutin adalah sekeping kod yang menjalankan tugas tertentu. Subrutin tidak mengembalikan nilai selepas pelaksanaan
  • Subrutin menawarkan penggunaan semula kod
  • Subrutin membantu memecah sebahagian besar kod menjadi kod terkawal kecil.