SUB PROGRAM PROCEDURE (SUB) dan FUNCTION
PROCEDURE / SUB Adalah sekumpulan statemen dari visual basic yang diberi nama, tidak menghasilkan nilai balik, hanya mengerjakan sejumlah proses Private /public sub nmsub(byref/byval/optional/paramarray namapara as type ) Perintah Periintah End sub Nmsubnama subprogram / procedure Byref melewatkan parameter secara referensi Byvalmelewatkan parameter secara nilai Optional nilai parameter boleh tidak diisi Paramarrayparameter berupa array Namaparanama parameter Catatan : Parameter bisa lebih dari 1 Parameter optional harus diletakan di urutan belakang Memanggil Procedure / Sub Namaprocedure(para,para,para…) Call Namaprocedure(para,para,para…)
Contoh Procedure/ subprogram tanpa parameter Private Sub Button1_Click() call bisaisi() End Sub Private Sub Button2_Click() call tidakbisaisi() Sub bisaisi() Me.TextBox1.Enabled = True Me.TextBox2.Enabled = True Me.TextBox3.Enabled = True Me.TextBox4.Enabled = True Me.TextBox5.Enabled = True Sub tidakbisaisi() Me.TextBox1.Enabled = False Me.TextBox2.Enabled = False Me.TextBox3.Enabled = False Me.TextBox4.Enabled = False Me.TextBox5.Enabled = False Contoh Procedure/ subprogram tanpa parameter
Contoh Procedure/Sub dengan parameter byval Sub hitung(ByVal bil1 As Integer, ByVal bil2 As Integer) TextBox3.Text = bil1 + bil2 End Sub Private Sub TextBox1_TextChange() call hitung(Val(TextBox1.Text), Val(TextBox2.Text)) Private Sub TextBox2_TextChanged()
Contoh Procedure/Sub dengan parameter byref Private Sub cmdtukar_Click() Dim satu as integer Dim dua As Integer satu = Val(TextBox1.Text) dua = Val(TextBox2.Text) call tukar(satu, dua) TextBox1.Text = satu TextBox2.Text = dua End Sub Sub tukar(ByRef bil1 As Integer, ByRef bil2 As Integer) Dim smt As Integer smt = bil1 bil1 = bil2 bil2 = smt
Contoh Procedure/ subprogram dengan parameter optional Private Sub Button1_Click() call bisadiisi() End Sub Private Sub Button2_Click() call bisadiisi(False) Sub bisadiisi(Optional ByVal keadaan As Boolean = True) Me.TextBox1.Enabled = keadaan Me.TextBox2.Enabled = keadaan Me.TextBox3.Enabled = keadaan Me.TextBox4.Enabled = keadaan Me.TextBox5.Enabled = keadaan Contoh Procedure/ subprogram dengan parameter optional
FUNCTION Adalah sekumpulan statemen dari visual basic yang diberi nama yang menghasilkan nilai balik Private /public function nmfu(byref/byval/optional/paramarray nmpara as type ) as type data Perintah Periintah End sub nmfunama function Byref melewatkan parameter secara referensi Byvalmelewatkan parameter secara nilai Optional nilai parameter boleh tidak diisi Paramarrayparameter berupa array Namaparanama parameter Catatan : Parameter bisa lebih dari 1 Parameter optional harus diletakan di urutan belakang Memanggil function Var=Namafunction(para,para,para…)
Contoh function dengan parameter array Private Function Sum(ParamArray args() As Variant) As Single Dim total As Single Dim i As Integer For i = 0 To UBound(args) total = total + args(i) Next i Sum = total End Function Pada button 1 dapat disii dengan print Sum(1,2,3,4,5) Atau Print Sum(11, 14, 55, 78, 102, 45, 99, 101, 55, 21)
Function dengan return value berupa array Private Function fstat(ByVal ParamArray args() As Object) As Single() Dim hasil(3) As Single Dim i As Integer For i =0 To UBound(args) hasil(0) = hasil(0) + args(i) If i = 0 Then hasil(1) = args(i) hasil(2) = args(i) End If If hasil(1) > args(i) Then hasil(1) = args(i) If hasil(2) < args(i) Then hasil(2) = args(i) Next i Return hasil End Function pada button1 click ketik program berikut Dim statistik As Single() = fstat(1, 6, 2, 7, 3, 9, 4, 10, 8, 5) TextBox1.Text = statistik(0) TextBox2.Text = statistik(1) TextBox3.Text = statistik(2) 1,2,3,4.5
Overloading Function Beberapa function mempunyai nama sama tetapi mempunyai parameter berbeda Function hitung(ByVal bil1 As Integer, ByVal bil2 As Integer) As Integer hitung = bil1 + bil2 End Function Function hitung(ByVal bil1 As Integer, ByVal bil2 As Integer, ByVal bil3 As Integer) As Integer hitung = bil1 + bil2 + bil3 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click TextBox1.Text = hitung(1, 2, 3) End Sub
MACAM-MACAM FUNCTION BAWAAN