Bagikan melalui


Subrutin (Visual Basic)

Prosedur Sub adalah serangkaian pernyataan Visual Basic yang diapit oleh pernyataan Sub dan End Sub. Prosedur Sub melakukan tugas lalu mengembalikan kontrol ke kode panggilan, tetapi tidak mengembalikan nilai ke kode panggilan.

Setiap kali prosedur dipanggil, pernyataannya dijalankan, dimulai dengan pernyataan yang dapat dieksekusi pertama setelah Sub pernyataan dan berakhir dengan pernyataan pertama End Sub, Exit Sub, atau Return yang ditemui.

Anda dapat menentukan Sub prosedur dalam modul, kelas, dan struktur. Secara default, ini adalah Public, yang berarti Anda dapat memanggilnya dari mana saja di aplikasi Anda yang memiliki akses ke modul, kelas, atau struktur tempat Anda mendefinisikannya. Istilah metode menjelaskan Sub atau Function prosedur yang diakses dari luar modul, kelas, atau struktur yang mendefinisikannya. Untuk informasi selengkapnya, lihat Prosedur .

Prosedur Sub dapat mengambil argumen, seperti konstanta, variabel, atau ekspresi, yang diteruskan ke dalamnya oleh kode panggilan.

Sintaks deklarasi

Sintaks untuk mendeklarasikan Sub prosedur adalah sebagai berikut:

[modifiers] Sub SubName[(parameterList)]
    ' Statements of the Sub procedure.
End Sub

modifiers dapat menentukan tingkat akses dan informasi tentang kelebihan beban, pengesampingan, berbagi, dan bayangan. Untuk informasi selengkapnya, lihat Sub Pernyataan.

Deklarasi parameter

Anda mendeklarasikan setiap parameter prosedur yang mirip dengan cara Anda mendeklarasikan variabel, menentukan nama parameter dan jenis data. Anda juga dapat menentukan mekanisme passing, dan apakah parameter bersifat opsional atau array parameter.

Sintaks untuk setiap parameter dalam daftar parameter adalah sebagai berikut:

[Optional] [ByVal | ByRef] [ParamArray] parameterName As DataType

Jika parameter bersifat opsional, Anda juga harus memberikan nilai default sebagai bagian dari deklarasinya. Sintaks untuk menentukan nilai default adalah sebagai berikut:

Optional [ByVal | ByRef]  parameterName As DataType = defaultValue

Parameter sebagai variabel lokal

Ketika kontrol beralih ke prosedur, setiap parameter diperlakukan sebagai variabel lokal. Ini berarti bahwa masa pakainya sama dengan prosedur, dan cakupannya adalah seluruh prosedur.

Sintaks Panggilan

Anda memanggil prosedur Sub secara eksplisit dengan pernyataan panggilan mandiri. Anda tidak dapat memanggilnya dengan menggunakan namanya dalam ekspresi. Anda harus menyediakan nilai untuk semua argumen yang tidak opsional, dan Anda harus mengapit daftar argumen dalam tanda kurung. Jika tidak ada argumen disediakan, Anda dapat menghilangkan tanda kurung secara opsional. Penggunaan Call kata kunci bersifat opsional tetapi tidak disarankan.

Sintaks untuk panggilan ke Sub prosedur adalah sebagai berikut:

[Call] SubName[(argumentlist)]

Anda dapat memanggil Sub metode dari luar kelas yang mendefinisikannya. Pertama, Anda harus menggunakan New kata kunci untuk membuat instans kelas, atau memanggil metode yang mengembalikan instans kelas. Untuk informasi selengkapnya, lihat Operator Baru. Kemudian, Anda dapat menggunakan sintaks berikut untuk memanggil Sub metode pada objek instans:

object.MethodName[(argumentList)]

Ilustrasi Deklarasi dan Panggilan

Prosedur berikut Sub memberi tahu operator komputer tugas mana yang akan dilakukan aplikasi, dan juga menampilkan stempel waktu. Alih-alih menduplikasi kode ini di awal setiap tugas, aplikasi hanya memanggil tellOperator dari berbagai lokasi. Setiap panggilan meneruskan sebuah string ke argumen task yang bertugas mengidentifikasi tugas yang sedang dimulai.

Sub tellOperator(ByVal task As String)
    Dim stamp As Date
    stamp = TimeOfDay()
    MsgBox("Starting " & task & " at " & CStr(stamp))
End Sub

Contoh berikut menunjukkan panggilan biasa ke tellOperator.

tellOperator("file update")

Lihat juga