Rabu, 25 September 2013

Sub Procedure dan Function Procedure


Sub Procedure dan Function Procedure

 Perbedaan Sub Procedure dengan Function Procedure


Tata cara pemberian nama Sub procedure/ Function 

procedure

  • Kita bisa menggunakan huruf dan nomor sebagai nama, tapi karakter pertama haruslah huruf
  • Tidak boleh ada spasi atau titik (“.”)
  • Tidak boleh ada karakter #, $, %, &, @,^, *,  !
  • Karakter lain seperti /,?,<,>,-,+ bisa digunakan tapi bisa menimbulkan kebingungan karena merupakan operator jadi paling aman adalah hanya gunakan huruf,nomor dan underscore( _ )
  • Huruf besar sama huruf kecil dianggap sama, tapi biasakan untuk menggunakan huruf besar pada karakter pertama untuk lebih menguatkan arti
  • Tidak boleh menyamai fungsi yang sudah ada di excel misalnya SUM, AVERAGE,FIND, dll serta jangan menyamai nama sel misalnya “A1” atau “R1C1”
  • Jangan lebih dari 255 karakter
  • Nama sebaiknya mencerminkan aksi/ tujuan dari sub/function misalnya: ProcessData, PrintReport, Sort_Array, or CheckFilename. Jangan hanya bersifat umum seperti: DoIt, Update, Fix, macro1, Macro2.

Syntax dari sub prosedure

[Private | Public | Friend] [Static] Sub name [(arglist)]
[statements]
[Exit Sub]
[statements]
End Sub
The Sub statement syntax has these parts:
   
Public Sub ini bisa diakses oleh prosedure/function lain di semua module
Private Sub ini hanya bisa diakses oleh sub/function di module yang sama
Friend Hanya digunakan di class module
Static Variable yang ada didalam sub ini nilainya disimpan sehingga tidak berubah
arglist Variable atau sekumpulan variabel yang merupakan argumen dari sub, dipisahkan dengan koma, syntax:[Optional] [ByVal | ByRef] [ParamArray] varname[( )] [As type] [= defaultvalue]
 Jadi suatu sub diawali dengan Sub dan diakhiri dengan End Sub
Exit Sub berguna untuk mengakhiri suatu sub prosedure walaupun belum mencapai akhir (End sub)

Cara untuk menjalankan Sub Prosedure

Berikut ini adalah cara2 untuk menjalankan sub
  • Klik didalam sub prosedure yang diinginkan, lalu klik menu Run–>Run Sub/UserForm , shortcut F5, atau klik  tombol Run Sub/UserForm di toolbar
  • Pilih list sub procedure di Macro dialog box  lalu klik “run
  • Klik  Toolbar/ribbon/quick access toolbar, Shape  yang telah di assign dengan sub prosedur
  • Dari  Sub procedure lain
  • Secara otomatis begitu membuka, menutup, mensave workbook , berpindah sheet, berpindah range, merubah isi cell tertentu, dll  sesuai dengan events dari tiap object di excel
  • Dari the Immediate window in the VBE. Ketik aja sub prosedur yang diinginkan dan tekan enter
Contoh
Sub panggil_fungsi()
Dim cb, cbroot
'minta input dari user
cb = InputBox("masukkan bilangan yg mo dicari akar pangkat tiga-nya")
'Debug.Print cb
If cb <> "" Then
cbroot = CubeRoot(cb)
MsgBox cbroot
Else
Exit Sub
End If
End Sub

 

 

Syntax dari Function prosedure

[Public | Private | Friend] [Static] Function name [(arglist)] [As type]
[statements]
[name = expression]
[Exit Function]
[statements]
[name = expression]
End Function
The Function statement syntax has these parts:
   
Public Function ini bisa diakses oleh prosedure/function lain di semua module
Private Function ini hanya bisa diakses oleh sub/function di module yang sama
Friend Hanya digunakan di class module
Static Variable yang ada didalam Function ini nilainya disimpan sehingga tidak berubah
arglist Variable atau sekumpulan variabel yang merupakan argumen dari function, dipisahkan dengan koma
 Jadi suatu sub diawali dengan kata Function dan diakhiri dengan kata End Function
Exit Function berguna untuk mengakhiri suatu function prosedure walaupun belum mencapai akhir (End Function)
Jangan lupa bahwa fungsi harus menghasilkan nilai yaitu dengan statemen/code
[name = expression]
Misalnya
cuberoot = number ^ (1 / 3)

How to run a Function procedure

  • Dari sub/ function prosedure yang lain
  • Diketik di worksheet sebagai fungsi
Contoh
Function CubeRoot(number)
CubeRoot = number ^ (1 / 3)
End Function
Sub test_Function()
MsgBox CubeRoot(27)
End Sub

Tidak ada komentar:

Posting Komentar