- benar menghasilkan 4 

 

 

 

85 

 

sehingga nilai 0.5 (nol koma lima) dianggap sebagai angka nol saja. Semua 

angka yang dibagi dengan nol maka akan menghasilkan error . Jadi, 

solusinya gunakan cara pada contoh 3.  

6. Fungsi – Fungsi Matematika 

Fungsi-fungsi yang bekaitan dengan matematika seperti terlihat pada tabel 

5.7. 

Tabel 5.7 Fungsi-Fungsi Matematika 

Fungsi Keterangan 

Abs() Mengembalikan nilai absolut dari argumen 

Atn() Mengembalikan nilai Arc Tangen dari argumen dalam bentuk radian 

Cos() Mengembalikan nilai Cosinus dari argumen dalam radian 

Exp() Mengembalikan nilai Eksponensial dari argumen 

Log() Mengembalikan nilai Logaritma dari argumen 

Sin() Mengembalikan nilai Sinus dari argumen dalam radian 

Sqr() Mengembalikan nilai Akar dari argumen 

Tan() Mengembalikan nilai Tengen dari argumen dalam radian 

 

7. Fungsi – Fungsi String 

Selain fungsi-fungsi numerik, Visual Basic juga mempunyai sejumlah 

fungsi-fungsi String diantaranya seperti pada tabel 5.8. 

Tabel 5.8 Fungsi-Fungsi String 

Fungsi Keterangan 

LCase() Mengembalikan argumen string sebagai tipe data string huruf kecil 

UCase() Mengembalikan argumen string sebagai tipe data string huruf besar 

Val() Mengembalikan nilai number dari argumen string 

Len() Mengembalikan nilai number yang menunjukkan panjang string 

Substring merupakan bagian dari suatu string. Untuk memperoleh substring 

dari suatu string dapat digunakan 3 fungsi berikut : 

 Left(StringVal, length) 

Fungsi ini mengembalikan nilai string dari sebelah kiri sebanyak length 

karakter . 

86 

 

 Right(StringVal, length) 

Fungsi ini mengembalikan nilai string dari sebelah kanan sebanyak 

length karakter . 

 Mid(StringVal, startVal, length) 

Fungsi ini mengembalikan nilai string dari startVal sebanyak length 

karakter . 

Contoh : 

 

 

 

 

8. Fungsi – Fungsi Tanggal dan Waktu 

Jika dalam suatu aplikasi diperlukan pengambilan tanggal atau waktu dari 

sistem, Visual Basic menyediakan fungsi – fungsi Now(), Date(), dan Time(). 

Lihat tabel 5.9. 

Tabel 5.9 Fungsi-fungsi Tanggal dan Waktu 

Fungsi Keterangan 

Now() Mengembalikan tanggal danwaktu sistem 

Date() Mengembalikan tanggal dari sistem 

Time() Mengembalikan waktu dari sistem 

DateDiff Mendapatkan selisih dari dua buah tanggal 

Untuk mencari selisih dari dua buah tanggal tidaklah sulit, karena dalam 

visual basic telah disediakan fasilitas untuk melakukan hal tersebut dengan 

menggunakan fungsi "DateDiff ", yaitu sebuah fungsi yang digunakan untuk 

mendapatkan selisih dari dua buah tanggal. Dari fungsi DafeDiff kita bisa 

mendapatkan selisih hari, bulan dan tahun dari dua buah tanggal. 

Cara penggunaan dari fungsi ini adalah sbb:  

 

 

Hurufkecil = LCase("Dwi Apri")   'HurufKecil = "stmik" 

hurufbesar = UCase("Setyorini")  'HurufBesar = "STMIK" 

Title = "STMIK Duta Bangsa" 

lTitle = Left(Title, 3)          'lTitle = "STM" 

rTitle = Right(Title, 5)         'RTitle = "angsa" 

mTitle = Mid(Title, 3, 8)        'MTitle = "MIK Duta" 

Panjang = Len(Title)             'length = 17 

87 

 

 

 

 

 

 

 

Selain fungsi-fungsi diatas terdapat sebuah fungsi yaitu format() yang 

berkaitan dengan fungsi-fungsi Tanggal dan waktu.  

 

Fungsi ini mengembalikan nilai variant atau string sesuai dengan format 

yang ditentukan.  

9. Contoh Program 

1. Membuat Marquee untuk Form Caption, dimana caption dari form yang 

kita gunakan akan berjalan dari kanan kekiri secara terus menerus. Kontrol 

yang digunakan adalah satu buah kontrol timer yang intervalnya kita set 

menjadi 100 atau bisa kita ganti sesuai keinginan kita. 

Ketikkan kode program seperti berikut : 

 

 

 

 

 

2. Menghitung Luas Segitiga, jika diketahui panjang dua sisi segitiga dan 

besar sudut yang diapit oleh segitiga tersebut. Untuk menyelesaikan masalah 

tersebut dapat digunakan fungsi berikut : L = ½ .a.b Sin r 

Catatan: sudut r yang Anda masukkan dalam ukuran derajat, untuk itu perlu 

dirubah terlebih dahulu sebelum dimasukkan dalam fungsi sin yang 

disediakan oleh VB. (Rad = Phi/180) 

Format(Ekpresi[,format[,firstdayofweek[, firstweekofyear]]]) 

 

Private Sub Form_Load() 

Form1.Caption = " [ Belajar VB 6.0 ] " 

End Sub 

 

Private Sub Timer1_Timer() 

a = Left(Form1.Caption, 1) 

b = Len(Form1.Caption) 

c = Right(Form1.Caption, b - 1) 

Form1.Caption = c + a 

End Sub 

Dim hari, bulan, tahun 

 

'Untuk mencari selisih hari 

   hari=DateTime.DateDiff("d",CDate(Text1.Text),CDate(Text2.Text))  

 

'Untuk mencari selisih bulan 

   bulan = DateTime.DateDiff("m",CDate(Text1.Text),CDate(Text2.Text))  

 

'Untuk mencari selisih tahun 

  tahun = DateTime.DateDiff("yyyy",CDate(Text1.Text),CDate(Text2.Text)) 

88 

 

Rancang formnya seperti berikut ini : 

 

 

 

 

 

 

 

 

 

Ketik kode programnya sebagai berikut : 

 

 

 

 

SOAL LATIHAN 

 

C. Latihan  

 

SOAL LATIHAN  

1. Buatlah sebuah form dengan sebuah label, sebuah Textbox, dan 2 buah 

command Button. Textbox tersebut digunakan untuk memasukan data berupa 

angka dengan range antara 0 sampai 100000. Jika seorang user memasukan 

huruf atau angka yang berada diluar range maka akan ditampilkan pesan 

kesalahan dan meminta user untuk memasukkan data kembali. Jika masukan 

seorang user sudah benar maka akan ditampilkan pesan bahwa masukan 

sudah benar dan keluar dari aplikasi. 

2. Buatlah program yang dapat menampilkan hari dan tanggal saat ini : 

Contoh Formnya : 

Private Sub cmdUsia_Click() 

A = Val(txtA.Text) 

B = Val(txtB.Text) 

R = Val(txtR.Text) 

 

hasil = 0.5 * A * B * Sin(R * (3.14 / 180)) 

txtLuas.Text = Round(hasil, 2) 

End Sub 

89 

 

 

 

 

 

 

3. Buat program untuk menghitung usia seseorang. Ketika program dijalankan 

muncul inputbox dan user diminta untuk memasukkan tanggal lahir. 

Tampilannya seperti berikut: 

 

 

 

 

 

Setelah user memasukkan tanggal lahir, dan mengklik tombol OK, muncul 

messagebox  yang menampilkan usia Anda. Tampilannya seperti berikut : 

 

 

DAFTAR PUSTAKA 

 

 

 

DAFTAR PUSTAKA 

 

 

 

 

 

 

 

90 

 

BAB VI 

KONTROL PROGRAM 

 

 

A. Pendahuluan 

Penyelesaian kondisi atau pernyataan kondisi (Conditional Statement) 

merupakan suatu pernyataan yang menganalisa suatu keadaan dan mengambil 

keputusan berdasarkan pada hasil analisa itu. Hasil dari penyelesaian, jika kondisi 

benar maka akan dikerjakan instruksi tertentu, sedang jika kondisi salah, maka 

akan dikerjakan instruksi yang lain. Ini salah satu dari fungsi dalam kontrol 

program. Dalam visual basic terdapat dua kontrol program yang dapat digunakan 

yaitu logika percabangan dan logika perulangan. 

   

B. Materi 

1. Operator Kondisi 

Untuk mengontrol alur program dalam Visual Basic, kita bisa 

menggunakan bermacam-macam operator kondisi. Pada dasarnya, operator 

kondisi ini mirip dengan operator aritmatik. Operator kondisi merupakan alat 

yang sangat hebat, dengan operator tersebut kita dapat melakukan 

perbandingan untuk memutuskan tindakan selanjutnya. Tabel 6.1 menunjukan 

operator kondisi yang digunakan dalam Visual Basic. 

Tabel 6.1 Operator Kondisi 

  

 

 

 

 

 

 

91 

 

2. Operator Logika 

Sebagai tambahan untuk operator kondisi, ada beberapa operator logika yang 

ditambahkan pada Visual Basic sehingga memudahkan pembuatan alur 

program. 

Tabel 6.2 Operator Logika 

 

 

 

 

 

3. Pernyataan If...Then...Else 

a. Syntaks  Umum 

Syntak umum untuk pernyataan if...then...else adalah 

 

Bila <kondisi> bernilai True maka <kode program> akan dikerjakan.  

 

 

 

 

 

 

Bila <kondisi> bernilai True maka <blok kode program 1> akan dikerjakan, 

tetapi bila <kondisi> bernilai False maka <blok kode program 2> yang akan 

dikerjakan. 

 

 

 

 

 

 

IF <kondisi> THEN <kode program>  

 

IF <kondisi> THEN  

<blok kode program 1>  

ELSE  

<blok kode program 2>  

END IF  

 

IF <kondisi 1> THEN  

<blok kode program 1>  

ELSEIF <kondisi 2> THEN 

<blok kode program 2> 

ELSE 

<blok kode program 3> 

END IF  

 

92 

 

Bila <kondisi 1> bernilai True maka <blok kode program 1> akan 

dikerjakan, kemudian bila <kondisi 2> bernilai True maka <blok kode 

program 2> akan dikerjakan, tetapi bila <kondisi 1> dan <kondisi 2>  

bernilai False maka <blok kode program 3> yang akan dikerjakan. 

b. Contoh Program : 

1) Membuat Program Input Password 

Letakkan kontrol Image, TextBox, Label dan Command. Atur seperti 

gambar berikut : 

 

Gambar 6.1 Program Input Password dengan Fungsi IF 

Pengaturan property setiap object-nya adalah sebagai berikut : 

Tabel 6.3 Property Object untuk Program Input Password 

Object Properties Value 

Form1 Caption Form  Password 

 StartUpPostion 2-CenterScreen 

Image1 Stretch True 

 Picture Logo.jpg 

 Visible False 

Label1 Caption Input Password 

Text1 Name txtPass 

 PasswordChar * 

 Text <kosong> 

Command1 Name cmdOK 

 Caption &OK 

Buka Jendela Code dan pada bagian Code Editor ketikkan kode programnya 

sebagai berikut : 

 

Private Sub cmdOK_Click() 

If txtPass.Text = "admin" Then Image1.Visible = 

True 

End Sub 

93 

 

Simpan program dan jalankan : 

1. Ketikkan sembarang teks pada txtPass lalu klik tombol OK, maka tidak 

terjadi apa-apa.  

2. Ketikkan “admin” pada txtPass lalu klik tombol OK, maka gambar logo 

akan muncul 

Penjelasan kode program : 

If txtPass.Text = "oryn" Then Image1.Visible = True 

 

 

 

Modifikasi programnya menjadi seperti berikut : 

 

 

 

 

 

Jalankan program : 

1. Ketikkan sembarang teks pada txtPass lalu klik tombol OK, maka 

gambar tidak muncul dan muncul kotak pesan “Password Salah”. Klik 

tombol OK pada kotak pesan tersebut. Maka txtPass dikosongkan dan 

kursor akan aktif di txtPass (txtPass.Setfocus) 

2. Ketikkan “admin” pada txtPass lalu klik tombol OK maka gambar akan 

muncul dan muncul kotak pesan “Password Benar”. 

Catatan Tambahan : 

 Teks “admin” harus diketik huruf kecil semua. Ingat : data string 

bersifat case sensitive !  

 Agar password-nya tidak bersifat case sensitive, modifikasi 

pernyataan kondisinya menjadi :  If LCase(txtPass.Text) = "admin" 

Then 

Private Sub cmdOK_Click() 

If txtPass.Text = "oryn" Then 

    Image1.Visible = True 

    MsgBox "Password Benar", vbOKOnly, "Sukses" 

Else 

    Image1.Visible = False 

    MsgBox "Password Salah", vbOKOnly, "Gagal" 

    txtPass.Text = "" 

    txtPass.SetFocus 

End If 

End Sub 

Kondisi 

Kode program yang dikerjakan 

jika kondisi True 

94 

 

 Fungsi LCase adalah untuk mengkonversi semua string yang diinput 

ke txtPass.Text menjadi huruf kecil, walaupun user menginputnya 

dengan huruf kapital.  

TANTANGAN :  

Modifikasilah struktur kontrol dan kode program di atas sehingga 

seorang user hanya mempunyai  3 kali kesempatan untuk mengetikkan 

password. Setelah 3 kali kesempatan dan password masih salah maka 

program akan otomatis berhenti.  

2) Membuat program menentukan nilai seorang mahasiswa dengan 

kriteria sebagai berikut : 

Tabel 6.4 Interval Nilai untuk Program Konversi Nilai 

 

 

 

 

 

Atur form beserta kontrol-kontrol yang diperlukan seperti berikut : 

 

Gambar 6.2 Program Konversi Nilai dengan Statement I 

 

 

Interval Nilai Nilai Huruf Keterangan 

80-100 A Lulus 

68-79 B Lulus 

56-67 C Lulus 

41-55 D Remidi 

0-40 E Gagal 

 

95 

 

Ketikkan kode program sebagai berikut : 

 

 

 

 

 

 

 

 

 

 

4. Pernyataan Select...Case 

Cara lain untuk menangani pengambilan keputusan dalam sebuah 

program adalah dengan menggunakan Select…Case Statement, yang mampu 

menangani sejumlah kondisi dari satu variabel. Select...Case serupa dengan If 

... Then ..... ElseIf, tetapi lebih efisien apabila percabangan bergantung kepada 

satu kondisi saja. Dengan menggunakan Select ... Case sebagai pengganti dari 

If ... Then ... Else If, akan membuat program menjadi lebih sederhana.  

a. Syntaks Umum : 

Format penggunaan Select Case : 

 

 

 

 

  

Type data pada nama_variabel harus sama dengan nilai pada Case. 

Private Sub txtNilai_Change() 

nilai = Val(txtNilai.Text) 

If nilai >= 80 And nilai <= 100 Then 

    lblHuruf.Caption = "A" 

    lblKet.Caption = "Lulus" 

ElseIf nilai >= 68 And nilai <= 79 Then 

    lblHuruf.Caption = "B" 

    lblKet.Caption = "Lulus"   

ElseIf nilai >= 56 And nilai <= 67 Then 

    lblHuruf.Caption = "C" 

    lblKet.Caption = "Lulus"  

ElseIf nilai >= 41 And nilai <= 55 Then 

    lblHuruf.Caption = "D" 

    lblKet.Caption = "Remidi" 

Else 

    lblHuruf.Caption = "E" 

    lblKet.Caption = "Gagal" 

End If 

End Sub 

Select Case nama_variabel 

   Case nilai_1 

      Perintah yang akan dieksekusi jika memenuhi nilai_1 

   Case nilai_2 

      Perintah yang akan dieksekusi jika memenuhi nilai_2 

   Case Else 

      Perintah yang akan dieksekusi jika tidak memenuhi semua 

End Select 

 

96 

 

b. Contoh Program 

1. Membuat program untuk mengetahui harga barang berdasarkan 

jenis barang yang dipilih di ListBox : 

Atur  Form beserta kontrol lain yang dibutuhkan seperti tampilan berikut: 

 

Gambar 6.3 Program Harga Barang dengan Statement Select Case 

Ketikkan kode program berikut : 

 

 

 

 

 

 

 

 

 

 

 

 

Private Sub lstBarang_Click() 

Dim Harga As Long 

Dim Satuan As String 

 

Select Case lstBarang.Text 

    Case "CD Blank" 

        Harga = 85000 

        Satuan = "Box" 

    Case "Buku Tulis" 

        Harga = 36000 

        Satuan = "Lusin" 

    Case "Kertas" 

        Harga = 28000 

        Satuan = "Rim" 

    Case "Bolpoin" 

        Harga = 15000 

        Satuan = "Pak" 

End Select 

 

Label3.Caption = Harga 

Label4.Caption = Satuan 

End Sub 

97 

 

Catatan : variablel nilai (lstBarang.Text)  adalah string sehingga nilai 

yang ada pada Case seperti "CD Blank" adalah tipe data string juga. 

TANTANGAN :  

 Modifikasi program Harga Barang di atas (gambar 6.3). Tambahkan 

input jumlah barang, tambahkan pula output output diskon dan total 

yang harus dibayar.  

 Diskon sebesar 5% dari TotalHarga. Diberikan diskon jika jumlah 

beli>=5, selain itu tidak mendapat diskon. 

  Total Bayar = Total Harga-Diskon 

2. Buka kembali contoh program konversi nilai pada gambar 6.2. Anda 

dapat mengganti statement IF dengan statement Select...Case. 

Berikut kode programnya: 

 

 

 

 

 

 

  

 

 

 

 

Keyword Is disini untuk menentukan kondisi. Biasa digunakan untuk data 

numerik.  

Atau bisa juga memakai kode program seperti berikut: 

 

Private Sub txtNilai_Change() 

Dim Nilai As Single 

Nilai = txtNilai.Text 

 

Select Case Nilai 

    Case Is >= 80 

        lblHuruf.Caption = "A" 

        lblKet.Caption = "Lulus" 

    Case Is >= 68 

        lblHuruf.Caption = "B" 

        lblKet.Caption = "Lulus" 

    Case Is >= 56 

        lblHuruf.Caption = "C" 

        lblKet.Caption = "Lulus" 

    Case Is >= 41 

        lblHuruf.Caption = "D" 

        lblKet.Caption = "Remidi" 

    Case Else 

        lblHuruf.Caption = "E" 

        lblKet.Caption = "Gagal" 

End Select 

End Sub 

98 

 

 

 

 

 

 

 

 

 

 

 

 

 

5. Pernyataan Do...Loop 

Visual Basic mendukung beberapa versi statement Do. Looping 

(perulangan) dengan menggunakan While mungkin yang paling populer 

digunakan dalam pemrograman Visual Basic. Seperti Statement If…Then, do 

While juga membutuhkan ekpresi perbandingan untuk keluar dari looping 

a. Syntaks Umum 

Ada beberapa syntak penggunaan untuk pernyataan Do..Loop 

 

 

 

 

 

 

Keterangan : VB Statement akan diulang  selama <kondisi> bernilai TRUE. 

Pengulangan berhenti bila <kondisi> sudah bernilai FALSE. 

Private Sub txtNilai_Change() 

Dim Nilai As Single 

Nilai = txtNilai.Text 

 

Select Case Nilai 

    Case 80 To 100 

        lblHuruf.Caption = "A" 

        lblKet.Caption = "Lulus" 

    Case 68 To 79 

        lblHuruf.Caption = "B" 

        lblKet.Caption = "Lulus" 

    Case 56 To 67 

        lblHuruf.Caption = "C" 

        lblKet.Caption = "Lulus" 

    Case 41 To 55 

        lblHuruf.Caption = "D" 

        lblKet.Caption = "Remidi" 

    Case Else 

        lblHuruf.Caption = "E" 

        lblKet.Caption = "Gagal" 

End Select 

End Sub 

a) Do While <kondisi> 

<VB statement> 

 Loop 

 

b) Do  

<VB statement> 

 Loop While <kondisi> 

 

 

 

99 

 

 

 

  

 

 

Keterangan : VB Statement akan diulang  sampai <kondisi> bernilai 

TRUE. Pengulangan berhenti bila <kondisi> sudah bernilai FALSE. 

b. Contoh Program 

1. Menmpilkan angka 0 sampai 10 di ListBox dengan perintah 

Do...While dan Do...Until. 

Atur Form beserta kontrol yang dibutuhkan seperti pada gambar 6.4 

 

Gambar 6.4 Program Menampilkan Angka dengan Do...Loop 

Ketik kode programnya seperti berikut ini : 

 

 

 

 

 

 

 

c) Do Until kondisi 

  VB statement 

 Loop 

 

d) Do  

VB statement 

 Loop Until kondisi 

Private Sub cmdUntil_Click() 

lstHasil.Clear 

i = 0 

Do Until i > 10 

 lstHasil.AddItem "Angka Ke- " & i 

 i = i + 1 

Loop 

End Sub 

 

Private Sub cmdWhile_Click() 

lstHasil.Clear 

i = 0 

Do While i =< 10 

 lstHasil.AddItem "Angka Ke- " & i 

 i = i + 1 

Loop 

End Sub 

100 

 

Penjelasan program : 

 Kode program tersebut akan menampilkan hasil yang sama.  

 Perhatikan pada cmdUntil_Click(). Program akan dijalankan sampai 

i>10 

 Perhatikan pada cmdWhile_Click(). Program akan dijalankan selama 

i=<10 

 Kedua statement tersebut memiliki arti yang sama 

 

2. Cobalah ganti syntaks statement  Do Until dan Do While di atas, 

dengan kode program berikut ini, lihat hasilnya: 

 

 

 

 

 

 

 

 

 

 

 

6. Pernyataan While...Wend 

Pengulangan While…Wend akan mengeksekusi sekumpulan statement-

statement perintah selama suatu kondisi itu benar. Looping atau perulangan 

yang menggunakan While..Wend ini mempunyai syntak sebagai berikut : 

a. Syntaks Umum 

Ada beberapa syntak penggunaan untuk pernyataan While...Wend 

 

 

 

Private Sub cmdUntil_Click() 

lstHasil.Clear 

i = 0 

Do 

    lstHasil.AddItem "Angka Ke- " & i 

    i = i + 1 

Loop Until i > 10 

End Sub 

 

Private Sub cmdWhile_Click() 

lstHasil.Clear 

i = 0 

Do 

    lstHasil.AddItem "Angka Ke- " & i 

    i = i + 1 

Loop While i =< 10 

End Sub 

While <kondisi> 

VB Statement 

Wend 

 

 

 

101 

 

Keterangan : Jika kondisi benar, maka semua statement akan dieksekusi dan 

ketika mencapai baris Wend, control akan kembali lagi ke statement While 

untuk mengevaluasi kembali nilai dari kondisi, jika nilai dari kondisi masih 

memenuhi syarat atau benar maka proses loop/perulangan akan terjadi lagi. 

Jika nilai kondisinya Salah, maka program akan keluar dari loop dan 

mengeksekusi perintah-perintah yang ada setelah Wend. 

b. Contoh Program  

1. Contoh Statement While berikut akan mengevaluasi nilai numerik yang 

dimasukkan user lewat keyboard, dan kondisi yang dievaluasi adalah 

selama nilainya lebih besar atau sama dengan nol, jika nilainya negatif 

maka program akan berhenti. 

 

 

 

 

2. Contoh 1 di atas bisa dimodifikasi. Letakkan sebuah command button 

dan sebuah textbox pada form kemudian, ketikkan listing program 

berikut dalam tombol command button tersebut. (atur posisinya dengan 

benar). 

 

 

 

 

 

7. Pernyataan For…Next 

Perulangan dengan For ... Next merupakan salah satu struktur 

perulangan yang sering terdapat pada banyak bahasa pemograman, perulangan 

For ... Next menggunakan suatu variabel yang disebut counter untuk 

melakukan penambahan secara otomatis, sesuai dengan nilai awal dari variabel 

Number = 0 

While Number >= 0 

Number = InputBox("Silakan masukkan nilai yang lain ?") 

Wend 

 

Private Sub Command1_click() 

Number = 0 

While number >= 0 

Total = Total + Number 

   Number = InputBox(“Silakan masukkan nilai yang lain ?”) 

Wend 

Text1.Text = Total 

End Sub 

 

102 

 

tersebut. Perulangan dengan For digunakan untuk mengulang statement atau 

satu blok statement berulang kali, sejumlah yang ditentukan.  

a. Syntaks Umum 

 

 

 

 <pencacah> adalah variabel (tipe: integer) yang digunakan untuk 

menyimpan angka pengulangan.  

 <awal> adalah nilai awal dari <pencacah>.  

 <akhir> adalah nilai akhir dari <pencacah>.  

 <langkah> adalah perubahan nilai <pencacah> setiap pengulangan. 

Sifatnya optional (boleh ditulis ataupun tidak). Bila tidak ditulis maka 

nilai <langkah> adalah 1. 

b. Contoh Program 

1. Program menampilkan angka dari 0 sampai 10 dan sebaliknya (10 

sampai 0) 

Atur Form dan Kontrol yang dibutuhkan seperti gambar 6.4. Ganti 

Caption pada Command, masing-masing menjadi ”For Next 1” da For 

Next2”. 

Ketikkan kode program berikut ini : 

 

 

 

 

 

 

 

 

 

 

Jika Anda menginginkan angka dengan kelipatan 2 dst, maka 

tambahkanlah perintah STEP,contoh : 

FOR <pencacah> = <awal> TO <akhir> [STEP <langkah>]  

<blok kode program>  

NEXT <pencacah>  

 

Private Sub cmdFor1_click() 

„Menampilkan angka 0 sampai 10 di ListBox 

lstHasil.Clear  

For i = 0 To 10  

lstHasil.AddItem "Angka " & i  

Next i 

End Sub 

 

Private Sub cmdFor2_click() 

„Menampilkan Angka 10 sampai 0 di ListBox 

lstHasil.Clear  

For i = 0 To 10 STEP -1 

lstHasil.AddItem "Angka " & i  

Next i 

End Sub 

103 

 

For i = 0 To 10 STEP 3, akan menampilkan angka dari 0 sampai 10 

dengan kelipatan 3. Hasilnya : 0, 3, 6, 9 

2. Menampilkan angka genap pada ListBox. Bilangan genap adalah 

bilangan yang habis dibagi 2. Memungkinkan user untuk menginputkan 

batas awal dan akhir. Atur form dengan meletakkan ListBox,2 TextBox , 

dan Command untuk proses. Buat properti Column = 3 untuk ListBox 

 

Gambar 6.5 Menampilkan bilangan genap dengan For Next 

Ketikkan kode program seperti berikut 

 

 

 

 

 

 

 

 

 

 

Bagaimana jika Anda diminta untuk menampilkan bilangan ganjil?? 

Silakan Anda coba sendiri. Okey  

 

 

Private Sub cmdProses_Click() 

Dim i, Awal, Akhir As Single 

lstHasil.Clear 

 

Awal = txtAwal.Text 

Akhir = txtAkhir.Text 

 

For i = Awal To Akhir 

    If i Mod 2 = 0 Then 

        lstHasil.AddItem i 

    End If 

Next i 

 

End Sub 

104 

 

C. LatihanATIHAN 

Buat program Registrasi Hotel, atur tampilan form beserta kontrol yang dibutuhkn 

sebagai berikut : 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Pada program di atas user dipersilahkan untuk mengisi namanya, jenis 

kelaminnya laki-laki atau perempuan, kemudian memilih jenis kamar yang 

diinginkan, kemudian memilih fasilitas apa saja yang diinginkan.   

Tiap kamar memiliki harga yang berbeda-beda. Untuk pilihan jenis kamar 

gunakan Option, di sini user hanya dapat memilih salah satu saja. Sedangkan 

untuk fasilitas dapat menggunakan Check, di mana user dapat tidak memilih dan 

bebas untuk memilih yang mana saja.   

Kita asumsikan harga kamar adalah sebagai berikut : 

Jenis Kamar Harga 

Standard 150000 

Suite 250000 

Silver 450000 

 

Jenis Fasilitas Harga 

Sauna 50000 

Fitness 75000 

Massage 150000 

105 

 

 

 Kemudian tampilkan harga total pembayarannya dalam bentuk Message Box 

dengan klik tombol Daftar.  

 Minta input  pembayaran dengan menggunakan InputBox. Validasilah agar 

pembayaran mencukupi total pembayaran. Jika pembayaran tidak mencukupi 

total pembayaran, maka InputBox akan muncul terus samapi pembayaran 

mencukupi. 

 Jika terdapat uang kembali tampilkan jumlah uang kembaliannya dengan 

MesageBox. 

 Dan ucapkan terima kasih. Setelah itu resetlah kembali form ke keadaan 

semula sebelum diisi. 

 

BAB VII FUNGSI-FUNGSI BAWAAN VB 

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

106 

 

BAB VII 

PROCEDURE DAN FUNCTION 

BAB VIII SUBROUTINE PROCEDURE,  

FUNCTION PROCEDURE and MODULE 

A. Pendahuluan 

Dalam kenyataan seringkali program yang harus ditulis cukup panjang, 

sehingga kesalahan yang mungkin dibuat oleh seorang programmer semakin 

besar. Untuk mengatasi masalah tersebut dapat dilakukan dengan memecah 

program tersebut menjadi bagian-bagian kecil (rutin) tetapi tetap logis. Rutin-rutin 

kecil tersebut akan membuat penelusuran dan perawatan program menjadi lebih 

mudah dan terstruktur. Rutin-rutin kecil tersebut sering disebut dengan nama 

prosedur. 

Dalam Visual Basic terdapat 2 macam prosedur yaitu : 

a. Prosedur umum (general purpose procedure) merupakan prosedur 

yang ditemukan di dalam daftar Drop Down pada jendela kode. 

b. Prosedur Kejadian (Event procedure), prosedur yang berisi kode yang 

dijalankan ketika suatu kejadian dari kontrol di bangkitkan.  

Sedangkan prosedur-prosedur yang ditambahkan dalam sebuah program 

tersebut disebut subprogram. Ada 2 jenis subprogram dalam Visual Basic yaitu 

prosedur subrutin (subroutine procedures) dan prosedur fungsi (function 

procedures). 

 

B. Materi 

a) Sub Rutin 

Subrutin merupakan prosedur umum (general porpuse procedure) yang ditulis 

dan ditambahkan dalam program. Format penulisan sebuah subrutin adalah 

sebagai berikut: 

  

 

 

 

Sub nama_subRutin [(argumen)] 

 . 

 . 

 . 

End Sub 

107 

 

Setiap kali prosedur dipanggil, maka pernyataan diantara Sub dan End Sub 

akan dijalankan. Argumen pada prosedur adalah nilai yang akan dilewatkan 

saat pemanggilan prosedur. 

Contoh :  

  

 

 

 

 

 

 

 

 

Sedangkan untuk memanggil sebuah subrutin digunakan format sebagai berikut : 

  

Untuk memanggil subrutin dari contoh diatas dapat digunakan kode sebagai 

berikut:  

 

atau  

 

Untuk memanggil sebuah subrutin dapat digunakan perintah Call diikuti dengan 

nama subrutin diikuti dan tanda kurung atau langsung memanggil nama subrutin 

saja. 

b) Fungsi 

Subrutin dan Fungsi sebenarnya mirip yaitu prosedur umum (general purpose 

procedure) yang ditulis dan ditambahkan dalam program. Bedanya Fungsi 

mengembalikan nilai sedangkan Subrutin tidak. Format penulisan sebuah 

Fungsi adalah sebagai berikut. 

 

 

 

 

 

 

 

Sub TotalPembelian() 

    ' Inisialisasi varibel 

    Dim Total As Currency 

    Dim Disc  As Single 

     

    'mendefinisikan nilai variabel 

    Total = txtTotal.Text 

    Disc = 0.2 

     

    lblTotal.Caption = Total - Total * Disc 

End Sub 

[Call] SubName [(Argumen list)] 

Call TotalPembelian() 

TotalPembelian 

Function nama_Fungsi [(argumen)] as [ReturnValType] 

 . 

 . 

 . 

End Function 

108 

 

Contoh : 

 

 

 

 

 

 

Pada contoh di atas merupakan fungsi TotalPembelian yang dimodifikasi. Total 

tidak lagi diambil dari nilai textbox (txtTotal), melainkan dikirim melalui suatu 

argumen. Argumen yang dikirimkan melalui suatu subrutin atau fungsi dapat 

digunakan langsung seperti sebuah variabel. 

Untuk memanggil fungsi dari contoh diatas dapat digunakan kode sebagai 

berikut:  

 

 

 

c) Modul (Module) 

Penulisan sebuah modul dapat dilakukan pada sebuah file berekstensi 

.Bas. File tersebut dapat dibuat melalui menu Project-Add Module. Secara 

default Visual Basic memberikan nama Module1. 

Pada Module, Anda dapat mendeklarasikan variable dengan awalan 

DIM, PRIVATE  maupun PUBLIC, dimana awalan DIM dan PRIVATE 

membentuk variable modul level (hanya berlaku didalam pemakaian variable 

bersangkutan), sedangkan awalan PUBLIC akan membentuk variable global 

yang akan berfungsi bagi keseluruhan program. 

Contoh : 

 

 

 

Function Total_Pembelian(Total As Currency) 

' Inisialisasi varibel 

  Dim Disc  As Single 

  

' Mendefinisikan nilai variabel 

  Disc = 0.2 

  Total_Pembelian = Total - Total * Disc 

   

End Function 

'Memasukkan nilai Total sebesar 200 

Total_Pembelian (200) 

Dim A As Integer       'Variabel A adalah modul level 

Private B As Integer   'Variabel B adalah modul level 

Public C As Integer    'Variabel C dapat digunakan 

                       'oleh program keseluruhan 

109 

 

Subrutin dapat ditulis pada module. Subrutin tersebut dapat dipanggil kapan 

saja dari aplikasi yang sama dengan format sebagai berikut: 

 

Contoh : 

 

 

atau  

 

Pemanggilan dapat dilakukan dengan menyebut nama module terlebih dahulu 

diikuti dengan tanda titik kemudian nama subrutin atau langsung nama 

subrutin. 

d) Contoh Program 

Membuat program untuk mengkalkulasi temperatur Celcius ke temperatur 

Fahrenheit. User diminta untuk memasukkan suhu dalam Fahrenheit dengan 

fasilitas InputBox, setelah diklik OK muncul messagebox yang menampilkan 

konversi suhu dalam Celcius. 

Ketikkan kode program berikut ini : 

 

 

 

 

 

 

 

 

 

 

 

SOAL LATIHAN 

 

 

 

 

[nama_module.]nama_subrutin 

Module1.TotalPembelian 

TotalPembelian 

'Fungsi Konversi Ke Celcius 

Function Celcius(fDerajat) 

Celcius = (fDerajat - 32) * 5 / 9 

End Function 

 

Private Sub Form_Load() 

'Menampilkan InputBox untuk Input Suhu dalam Fahrenheit 

'Celcius(Temp): memanggil fungsi Celcius dengan besar suhu 

                'sesuai yang dimasukkan diinputbox 

'Perintah Round untuk menampilkan angka desimal dengan 

                'mengatur berapa angka di belakang koma 

 

Dim Temp 

Temp = InputBox("Silakan masukkan suhu dalam Fahrenheit", "Suhu") 

MsgBox "Suhu dalam Celcius adalah : " & _ 

Round(Celcius(Temp), 2) & " Derajat", vbOKOnly, "Suhu dalam 

Celcius" 

End Sub 

110 

 

C. Latihan 

Modifikasi contoh program konversi suhu di atas, buat supaya user bisa memilih 

menu untuk konversi suhu. Contoh tampilan programnya seperti berikut : 

 

 

 

 

 

 

 

 

 

 

 

 

 

User memasukkan nilai dan memilih satuan suhu yang akan dikonversi. User juga 

menentukan nilai desimal dari hasil yang akan ditampilkan. Kemudian secara 

otomatis, hasil akan ditampilkan dalam Celcius, Fahrenheit, Kelvin dan Reamur 

 

DAFTAR PUSTAKA 

 

 

 

 

 

 

 

 

 

 

 

 

111 

 

BAB VIII 

PEMROGRAMAN MULTIMEDIA 

 

A. Pendahuluan 

”The American Heritage Dictionary” mendefinisikan bahwa multimedia 

adalah kombinasi dari penggunaan beberapa media seperti film, slide, 

music,penerangan dengan text, image, khusunya untuk tujuan pendidikan dan 

hiburan. Unsur-unsur  seperti text, audio (narasi, dialog, sound effect), musik, 

film, video, fotografi, animasi dan grafik merupakan media pendukung yang 

tergabung dan terintegrasi menjadi satu-kesatuan karya multimedia. Bentuk 

interactive multimedia termasuk di dalamnya website, cdrom interactive, 

program/software, presentasi, tutorial, help sectiondal an bahkan game. 

Sekarang yang jadi pertanyaan, bagaimana jika produk-produk 

multimedia tidak dihasilkan dari aplikasi program multimedia ? Mampukah 

program-program komputer yang sifatnya umum dapat digunakan untuk 

mendesain produk multimedia? Jawabannya tentu tergantung pogram itu sendiri, 

apakah software programnya mendukung konsep multimedia atau tidak. 

Umumnya perkembangan teknologi multimedia tidak hanya tergantung pada 

perkembangan software semata, tetapi terkait dengan perangkat elektronik. 

 

B. Materi 

1. Dasar Pemrograman Multimedia 

Visual basic  merupakan salah satu bahasa pemrograman yang mendukung 

konsep multimedia. Sejak diluncurkan pertama kali, visual basic yangzhou 

bekerja di sistem operasi windows terus menambah fasilitas untuk 

pemrograman multimedia. Salah satu fasilitas tersebut adalah sebuah kontrol 

Active X yang disertakan dalam visual basic edition dengan nama kontrol 

multimedia MCI (Media Control Interface), misalnya CD Player, VCR  dan 

Video Player. 

Sebenarnya dalam visual basic masih terdapat tiga kontrol lain seperti 

MCIWndx Control, Microsoft ActiveMovie Control, Windows Media Player. 

Tetapi dari kesemuanya, kontrol multimedia MCI adalah yang terlengkap 

112 

 

serta merupakan kontrol langsung berhubungan dengan visual basic 

yangzhou melibatkan properti dan event. 

Sebelum mendesain program multimedia dengan visual basic 6.0 terlebih 

dahulu aktifkan kontrol multimedia yang ingin digunakan. Langkah-langkah 

untuk mengaktifkan kontrol-kontrol multimedia adalah sebagai berikut : 

 Klik menu project dan klik menu popup components  atau 

untukmempersingkat kerja, tekan kombinasi tombol Ctrl+T 

 

Gambar 8.1 Bagian dari menu project 

 Selanjutnya  visual basic 6.0 menampilkan kotak dialog components, 

seperti gambar 8.2. 

 Klik tab control dan lakukan scrolup (gulungk e atas) untuk 

menampilkan kontrol-kontrol multimedia 

 

Gambar 8.2 Kotak Dialog Components 

113 

 

2. Menentukan Tipe Peralatan Multimedia 

Sebelum menggunakan tombol-tombol pada kontrol multimedia, peralatan 

multimedia perlu diaktifkan dengan valid yaitu dengan perintah DeviceType. 

Tujuan dari proses ini adalah agar kontrol tersebut secara otomatis dapat 

dikonfigurasikan sewaktu program berjalan. Proses penempatan ini biasanya 

dilakukan lewat kode program dalam suatu procedure, misalnya form_load. 

Contoh penuliasan dari properti DeviceType adalah sebagai berikut : 

MMControl1.deviceType=”WaveAudio” 

Tabel 8.1 Peralatan Multimedia 

No. 

Peralatan 

Multimedia 

DevName Keterangan 

1 Video (file .avi) AVIVideo 

Format video 

Microsoft AVI 

2 Audio CD CDAudio 

CD Musik 

melalui drive CD-

ROM 

3 Digital Tape DAT 

Peralatan digital 

tape (DAT)  

4 Digital Video DigitalVideo Fata Video digital 

5 Video MMMovie 

Format film 

multimedia 

6 Scanner Scanner Peralatan Scanner 

7 MIDI sequencer Sequencer 

Data sequencer 

MIDI 

8 Videotape VCR 

Perekam kaset 

video 

9 Videodisc Videodisc 

Perekam Video 

Disc 

10 Wave (file .wav) WaveAudio 

File Audio 

microsoft  

windows 

11 Buatan pemakai other 

Tipe multimedia 

buatan pemakai 

 

3. Kontrol Media Player 

Kontrol media player merupakan salahsa tu komponen pada visual basic 6.0 

yang digunakan untuk menjalankan aplikasi video dan audio pada banyak file 

format multimedia. Untuk mengaktifkan kontrol tersebut, langkah-langkah 

yang dilakukan yaitu : 

114 

 

 Lakukan klik pada menu project, components, atau dengan cara lain yaitu 

dengan melakukan klik kanan pada toolbox dank lik menu  components. 

 

Gambar 8.3 Menu Shorcut Components 

 Selanjutnya sebuah kotak dialog components ditampilkan dan pilih tab  

controls. 

 Berikan tanda cek (√) pada kontrol windows media player. Kontrol ini 

membutuhkan file yang tersimpan dalam folder system32 yang bernama 

MSDXM.OCX 

 

Gambar 8.4 memilih kontrol media player 

 Klik tombol OK untuk menutup kotak dialog components dan pada 

toolbox akan terdapat kontrol media player. 

 Untuk menempatkan kontrol media player pada form, yaitu klik ikon 

 pada toolbox dan  lakukan drag pada form untuk menentukan luas 

lokasi yang digunakan. 

 Sedangkan untuk menghubungkan kontrol media player denganfile 

multimedia. Perintah yang digunakan adalah : 

MediaPlayer1.FileName=Path & <nama file> 

Misalnya : 

Media Player1.FileName = ”E:\Film\Coba.mpeg” 

115 

 

Contoh : 

 

Gambar 8.5 Menggunakan kontrol media player 

 

 

Ketikan Kode Program pada tombol Buka seperti berikut : 

Private Sub Command1_Click() 

CommonDialog1.ShowOpen 

  MediaPlayer1.FileName = _ 

  CommonDialog1.FileName 

End Sub 

 

4. Kontrol Multimedia Control 6.0 

Kontrol multimedia control 6.0 adalah sebuah kontrol ActiveX yang 

disertakan dalam Microsoft Visual Basic Profesional Edition. Dengan kontrol 

ini dapat dibuat program yang mampu menyediakan  fungsi-fungsi 

multimedia pendukung driver MCI (Media Control Interface), misalnya 

memutar film, memainkan CD Audio, merekam Wave Audio dan sebagainya. 

Disamping itu kontrol Multimedia MCI juga menyediakan sekumpulan 

tombol bergaya compact disk  untuk memainkan dan merekam media pada 

program anda. 

Kontrol ActiveX Multimedia Control 6.0 dapat ditambahkan ke dalam 

toolbox dengan langkah-langkah sebagai berikut : 

1. Aktifkan kotak dialog components dengan cara klik kanan mouse pada 

toolbox atau klik menu project dan pilih menu components. 

Media Player1 

Command Button 1 

Common Dialog1 

116 

 

2. Pda tab controls, pilih dan berikan tanda cek pada Microsoft Multimedia 

Control 6.0 adalah MCI.OCX 

3. Klik tombol OK untuk menutup kotak dialog components. 

 

Gambar 8.6 Memilih kontrol multimedia control 6.0 

4. Untuk menempatkan kontrol multimedia control 6.0 pada form, yaitu klik 

icon  pada toolbox danish lakukan drag pada form untuk 

menentukan luas lokasi yang digunakan. 

5. Kontrol multimedia control 6.0 mempunyai serangkaian tombol perintah 

yang berfungsi secara otomatis pabila terdapat peralatan multimedia yang 

sedang terbuka dan kontrol dinyalakan. Tombol-tombol tersebut antara 

lain Prev, Next, Play, Pause, Back, Step, Stop, Record dan eject. Meskipun 

anda dapat menambahkan fasilitas khusus untuk tombol-tombol ini yaitu 

dengan menuliskan event procedure, tetapi anda boleh tidak 

mengkonfigurasikan lagi mengingat setting tombol yang sudah disediakan 

dapat langsung digunakan dengan baik. 

Sebelum anda  mengenal lebih jauh tentang fungsi dari kontrol multimedia 

control 6.0, perlu kiranya dipahami beberapa property khusus yang 

diediakan oleh kontrol ini, yaitu : 

 Devive Type 

Property ini digunakan untuk menentukan device yang akan 

digunakan oleh kontrol multimedia control 6.0, yaitu AVIVideo, 

DAT, CDAudio, DigitalVideo, MMMovie, Other, Overlay, Scanner, 

Sequencer, VCR atau WaveAudio. Biasanya kode program diletakkan 

117 

 

dalam event procedure form load agar kontrol secara otomatis dapat 

dikonfigurasikan sewaktu program berjalan. 

Bentuk penulisan dari properti deviceType sebagai berikut : 

MMControl.DeviceType=DevName 

 

 FileName 

Properti ini berisi nama file yang ditentukan untuk dimainkan oleh 

kontrol multimediaMCI 

Bentuk penulisaan : 

MMControl.Filename=<nama file> 

 

 Wait 

Properti ini digunakan untuk menentukan agar kontrol menunggu 

perintah selanjutnya diselesaikan terlebih dahulu sebelum tugas 

pengendalian dikembalikan pada aplikasi. 

Bentuk penuliasn : 

MMControl.Wait=<boolean> 

 

 Command 

Properti ini digunakan untuk memberikan perintah pada kontrol yang 

akan dieksekusi, yaitu Open, Close, Playe, Pause, Stop, Back, Step, 

Prev, Next, Seek, Record, Eject, Sound atau Save. 

Bentuk penulisan : 

MMControl,Command=<Perintah String> 

 

 Sharable 

Properti ini digunakan untuk menentukanagar program lain mampu 

menggunakan device MCI yang sama. 

Bentuk penulisan : 

MMConrol.Sharable=<True/False> 

 

 

118 

 

 Notify 

Properti ini digunakan agar kontrol multimedia MCI memberitahu 

atau tidak apabila perintah ”Open” dan ”Play” telah selesai 

dilaksanakan. 

Bentuk penulisan : 

MMControl.Notify=<True/False> 

 

Contoh Program : 

Desain Form seperti berikut : 

 

Gambar 8.7 Menggunakan kontrol MMControl 

Ketikan Kode Program Seperti Berikut : 

Private Sub Command1_Click() 

MMControl1.Notify = False 

MMControl1.Wait = True 

MMControl1.Shareable = False 

CommonDialog1.ShowOpen 

MMControl1.FileName = _ 

CommonDialog1.FileName 

Text1.Text = CommonDialog1.FileName 

MMControl1.Command = "open" 

MMControl1.Command = "play" 

End Sub 

 

Private Sub Command2_Click() 

End 

End Sub 

 

5. Memainkan File-File Video 

File video (film) adalah file yang berisi rangkaian gambar dan suara  yang  

diolah sedemikian rupa sehingga terbentuk suatu gerakkan yang terus 

menerus. Untuk menghasilkan suatu gerakkan, tentu diperlukan suatu 

119 

 

kecepatan yang cukup sehingga dapat mengelabuhi mata orang yang melihat 

film tersebut. 

Terdapat dua  kecepatan yang harus  dipahami dalam mebuat sebuah animasi 

pada film. Pertama adalah  jumlah gambar per detik yang ditampilkan saat 

proses presentasi (playback rate). Kedua adalah jumlah gambar yang berbeda 

yang muncul per detik (sampling rate/update rate). 

File video merupakan sarana yang ampuh untuk menambahkan animasi, 

petunjuk langkah demi langkah, informasi bantuan atau hanya untuk 

membuat agar program yang dibuat lebih memiliki sentuhan pribadi. 

a. File AVI  

 file AVI (Audio Video Interleaving) merupakan file standart yang 

dimiliki oleh sistem operasi Microsoft Windows untuk memainkan data video 

dan audio secara digital. File AVI  adalah file hasil kopresi gambar-gambar 

dan atau suara yang terangkai dan membentuk suatu file baru yang dapat 

dimainkan secara bergerak dan bersuara. 

 

Contoh Program : 

 

Ketikan Kode Proram Berikut : 

Private Sub Command1_Click() 

MMControl1.Notify = False 

MMControl1.Wait = True 

MMControl1.Shareable = False 

MMControl1.DeviceType=”AVIVideo” 

CommonDialog1.ShowOpen 

MMControl1.FileName = _ 

CommonDialog1.FileName 

Text1.Text = CommonDialog1.FileName 

MMControl1.Command = "open" 

MMControl1.Command = "play" 

 

End Sub 

120 

 

Private Sub Command2_Click() 

End 

End Sub 

 

b. File DAT  

 File DAT (Digital Audio Tape) adalah file yang diproses dengan 

peralatan digital tape. Ukuran dari file ini cukup besar ibandingkan dengan 

file standar microsoft yaitu AVI, tetapi gambar yang dihasilkan jauh lebih 

bagus. 

Banyak peralatan (player) yang dapat digunakan untuk menjalankan file DAT 

ini. Visual Basic 6.0 sendiri mempunyai kontrol program yang mampu untuk 

mengoperasikan file tersebut. Salah satu kontrol programnya adalah 

Multimedia MCI. Sedang untuk  standar windows dapat digunakan kontrol 

program windows media player. 

 

Contoh Progam : 

  

 

 

 

Ketikan Kode Program pada tombol Buka seperti berikut : 

Private Sub Command1_Click() 

CommonDialog1.ShowOpen 

  MediaPlayer1.FileName = _ 

  CommonDialog1.FileName 

End Sub 

Media Player1 

Command Button 1 

Common Dialog1 

121 

 

6. Memainkan File Audio WAV dan MIDI  

a. File WAV 

File .WAV (Waveform) adalah file untuk menyimpan suara yang direkam 

dengan teknologi dari micrisift. Dalam lingkungan  windows,  format  file 

ini telah  diakui sebagai format audio standar. Keuntungan dari file .WAV 

adalah anda dapat menyimpan  suara apa saja dari berbagai sumber, seperti 

mikrofon, pemutar CD atau bahkan tape recorder. 

Sebelum disimpan pada file .WAV, suara analog harus diubah ke bentuk 

suara digital, atau dengan kata lain suara analog harus dicuplic dan 

dikuantisasi terlebih dahulu. Suara analog dapat dicuplic dengan berbagai 

frekwensi yaitu 8 KHz, 11 KHz, 22 KHz. Tentu saja makin tinggi 

frekwensi pencuplikan, kualitas suara semakin tinggi. Sebagai contoh, 

suara yang dicuplic dengan frekwensi 11 KHz setara dengan suara telepon, 

sedangkan suara yang dicuplic dengan  frekwensi 44 KHz setara dengan 

suara CD-Audio. Untuk kuantisasi, suara yang disimpan menggunakan 16 

bit mempunyai kualitas lebih tinggi dibandingkan suara yang disimpan 

menggunakan 8 bit saja. 

Kelemahan file .WAV yang paling mencolok adalah ukurannya sangat 

besar. Sebuah lagu yang bila diputar hanya membutuhkan waktu beberapa 

menit saja, dapat memakan ruangan harddisk puluhan Megabyte. 

Dalam memainkan file Wave dengan visual b asic, anda dapat 

menggunakan kontrol program yang sudah disediakan oleh visual basic 

atau software multimedia lain dan dapat juga dimainkan dengan 

memanfaatkan fasilitas library ”Winmm.dll”. 

Contoh : 

 Desain form seperti berikut : 

 

 Ketik kode program berikut pada general procedure  

122 

 

Private Declare Function playsound Lib _ 

"winmm.dll|" Alias "playsounda" ( _ 

ByVal lpszname As String, ByVal hmodule _ 

As Long, ByVal dwflags As Long) As Long 

Const snd_async = &H1 

Const snd_filename = &H20000 

Const snd_sync = &H0 

Const snd_nodefault = &H2 

Const snd_loop = &H8 

Const snd_nonstop = &H10 

Const snd_nowait = &H2000 

 

Private Function putarlagu(soundfile As String) As Boolean 

Dim pilihlagu As Boolean 

pilihlagu = playsound(soundfile, vbNull, sdn_filename + snd_sync 

+ snd_nonsto + snd_nodefault) 

putarlagu = pilihlagu 

End Function 

 

 Ketik kode program pada tombol memutar file WAVe 

Private Sub Command1_Click() 

putarlagu ("D:\data\lagu\ok.wav") 

End Sub 

 

b. File MIDI  

sama seperti file .WAV, file MIDI (Musical Instruments Digital Interface) 

yang berakhiran, .MID juga berhubungan dengan suara. Perbedaan dasar 

dari file WAV dan file MIDI terletak pada teknik penyimpanannya. 

Keuntungan file .MID dibandingkan dengan file .WAV adalah ukurannya 

yang sangat kecil. Kerugiannya adalah tidak semua suara dapat disimpan 

dalam file .MID, hanya suara dari alat music tertentu saja yang dapat  

disimpan. Sebagai contoh, anda tidak  dapat menyimpan suara anjing 

menggonggong atau singa mengaum pada file .MID. 

Contoh Program : 

 

 

 

 

123 

 

 Buat desain form seperti berikut ini : 

 

Ketikan kode program berikut : 

Private Declare Function mcisendstring Lib _ 

"winmm.dll" Alias "mcisendstringa" ( _ 

ByVal lpstrcommand As String, _ 

ByVal lpstrreturnstring As String, _ 

ByVal ureturnlength As Long, _ 

ByVal hwndcallback As Long) As Long 

 

Public Function playmidifile( _ 

midifile As String) As Boolean 

Dim lret As Long 

If Dir(midifile) = "" Then Exit Function 

lret = mcisendstring("stop midi", "", 0, 0) 

lret = mcisendstring("close midi", "", 0, 0) 

lret = mcisendstring("open sequencer!" & _ 

midifile & "alias midi", "", 0, 0) 

lret = mcisendstring("play midi", "", 0, 0) 

playmidifile = (lret = 0) 

End Function 

 

Public Function stopmidi() As Boolean 

Dim lret As Long 

lret = mcisendstring("stop midi", "", 0, 0) 

stopmidi = (lret = 0) 

lret = mcisendstring("close midi", "", 0, 0) 

End Function 

 

Private Sub Command1_Click() 

playmidifile ( _ 

"D:\musuc\coba.mid") 

End Sub 

 

Private Sub Command2_Click() 

stopmidi 

End Sub 

 

 

 

124 

 

C. Latihan 

Buatlah program untuk menjalankan File Video degan esain seperti berikut ini : 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

125 

 

BAB IX 

PEMROGRAMAN DATABASE 

 

 

A. PendahuluanTE 

Database merupakan bagian dari kehidupan kita sehari-hari meskipun 

sering tidak disadari. Sebagai contoh di STMIK Duta Bangsa, database digunakan 

untuk menyimpan data para mahasiswa, dosen, jadwal kuliah, nilai masing-

masing mahasiswa, dan lain-lain.  

Database merupakan sekumpulan data yang saling berhubungan, didesain 

untuk menyediakan informasi pada sebuah organisasi. Sedangkan DBMS (The 

Database Management System) merupakan perangkat lunak yang digunakan 

untuk mendefinisikan, membuat, mengatur, dan menyediakan akses pada 

database. Microsoft Access merupakan contoh software RDBMS (Relation 

DBMS).  

 

B. Materi 

1. Membuat Database dan Tabel dengan Visual Data Manager 

Untuk membuat database dengan Visual Data Manager, lakukan langkah-

langkah sebagai berikut : 

 Pilih menu Add Ins pada menu utama Visual Basic, kemudian pilih Visual 

Data Manager 

 Pilih File – New – Microsoft Access – Version 7.0 MDB 

 Berikan nama database(misal dbAkademik), tentukan tempat dimana Anda 

akan menyimpan database, kemudian klik Save. 

 Untuk membuat tabel, klik kanan Properties, pilih New Table 

 

 

 

 

 

126 

 

 

 

 

 

 

 

 

 

 

Gambar 9.1 Membuat tabel 

 Isikan nama tabel, klik Add Field, isikan nama field, tipe data dan tentukan 

Filed Sizenya, Klik OK.  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Gambar 9.2 Struktur Tabel 

 Untuk membuat Primary Key pada Field, klik Add Index, isikan Name 

(misal:NIM), pada Available Fields pilih Field yang akan dijadikan Primary 

Key (misal pilih NIM) 

 Tentukan pilihan Index ( Primary, Unique, IgnoreNulls). Primary digunakan 

sebagai pengenal suatu record, jika tabel yang dihubungkan berhubungan 

127 

 

denga tabel yang lain (dalam satu tabel hanya boleh ada satu primary key). 

Unique dipilih jika ingin indeks bersifat unik, IgnoreNulls digunakan untuk 

mengabaikan field yang kosong. 

 

Gambar 9.3 Menentukan Primary Key 

 Jika Anda sudah membuat semua Field yang dibutuhkan, maka klik Build 

the Table 

2. Mengisi Data Pada Tabel 

 Klik kanan pada nama tabel (tbMahasiswa, pilih Open 

 

 

 

 

 

 

 

 

 

 

 

Gambar 9.4 Membuka Tabel 

128 

 

 Muncul window Dynaset:Mahasiswa 

 

Gambar 9.5 Mengisikan data pada tabel 

Fungsi menu yang ada pada tabel tbMahasiswa 

 Add : menambah record baru 

 Edit : mengoreksi record 

 Delete : menghapus record aktif 

 Find : mencari record 

 Refresh : menampilkan ulang setelah record mengalami perubahan 

 Close : menutup tabel 

3. Data Acces Object (DAO) 

DAO (Data Access Object) merupakan suatu Object Data Access Yang 

berukuran besar meliputi kemampuan Data Definition, Data Manipulation dan 

Database Maintenance. Untuk mengakses database menggunakan DAO 

dibutuhkan object Data. Jika dikoneksikan dengan Microsoft Access DAO 

hanya bisa dikoneksikan dengan Access 97. 

 

 

 

 

Gambar 9.6 Objek Data 

 

129 

 

Beberapa properti yang dimiliki oleh objek Data dapat Anda lihat pada tabel 

9.1 

Tabel 9.1 Properti Objek Data 

 

Properti Keterangan 

Connect 

Hubungan file data, bias bersumber dari Access, dBase, 

Excel, Foxpro, Lotus, Paradox, dan file Text.  

DatabaseName Nama file database 

RecordSource Tabel dalam database 

EOF Action 

Pengecekan pergerakan kusror. Jika kursor sampai pada 

akhir file, maka terdapat pilihan property : MoveLast 

(record terakhir), EOF (akhir file), AddNew (menambah 

record baru) 

Recordset Type Tipe record : 0-Table, 1-Dynaset, 2-SnapShot 

a) Koneksi database dengan DAO 

Untuk koneksi database dengan DAO, Anda harus menambahkan objek Data 

pada Form. Ada dua cara koneksi database menggunakan DAO 

1. Dengan mengatur property dari objek Data 

Tabel 9.2 Properti Kontrol Data dbAkademik 

Property Setting Value 

Name datAkademik 

Caption dbAkademik 

Connect Access 

DatabaseName dbAkademik 

Recordsource tbMahasiswa 

2. Pengaturan dengan mengetikkan kode program seperti berikut : 

 

 

Koneksi database cara pertama masih bersifat statis yang artinya jika 

program/file dipindah ke folder atau drive lain, maka pengaturan properti 

DatabaseName harus disesuaikan dengan program/file berada. 

Koneksi database cara kedua, sifatnya dinamis. App.Path digunakan 

untuk mendapatkan folder aktif. 

 

Private Sub Form_Load() 

datAkademik.DatabaseName = App.Path & "\dbAkademik.mdb" 

datAkademik.RecordSource = "tbMahasiswa" 

End Sub 

130 

 

b) Contoh Program menggunakan DAO 

Berikut adalah contoh program olah data Mahasiswa di STMIK Duta Bangsa. 

Atur Form seperti pada contoh gambar 9.7. 

 Grid menggunakan DBGrid. Untuk menambahkan DBGrid di toolbox 

adalah dari menu Project – Components, pilih tab Controls- kemudian 

pilih Microsoft Data Bound Grid Control 5.0. Atur properti Datasource 

dari DBGrid, pilih datAkademik. 

 

Gambar 9.7 Program olah data mahasiswa dengan DAO 

Ketik kode program berikut : 

1) Koneksi Database 

 

 

 

 

 

Private Sub Form_Load() 

Data1.DatabaseName = App.Path & "\Akademik.mdb" 

Data1.RecordSource = "Mahasiswa" 

End Sub 

131 

 

2) Form Activate 

 

 

 

3) Tombol Edit 

 

 

 

 

 

 

 

4) Sub Rutin 

 

 

 

 

 

 

 

 

Private Sub Form_Activate() 

kosong 

tdksiap 

batal.Enabled = False 

simpan.Enabled = False 

tambah.SetFocus 

End Sub 

 

Private Sub cmdEdit_Click() 

If cmdEdit.Caption = "Edit" Then 

    txtNIM.Enabled = True 

    txtNIM.SetFocus 

    cmdEdit.Caption = "Update" 

    cmdNew.Enabled = False 

    cmdDel.Enabled = False 

Else 

    With datAkademik.Recordset 

        .Edit 'Perintah untuk edit data 

        !Nama = txtNama.Text 

        !Alamat = txtAlamat.Text 

        !TglLahir = dtpLahir.Value 

        .Update 

    End With 

    cmdCancel_Click ' memanggil cmdCancel_Click 

End If 

End Sub 

 

Sub kosong() 

Text1.Text = "" 

Text2.Text = "" 

Text3.Text = "" 

Combo1.Text = "" 

End Sub 

Sub siap() 

Text1.Enabled = True 

Text2.Enabled = True 

Text3.Enabled = True 

Combo1.Enabled = True 

End Sub 

Sub tdksiap() 

Text1.Enabled = False 

Text2.Enabled = False 

Text3.Enabled = False 

Combo1.Enabled = False 

End Sub 

132 

 

5) Tombol Tambah 

 

 

 

 

 

6) Tombol Simpan 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Private Sub simpan_Click() 

If tombol = "UBAH" Then 

Data1.Recordset.Edit 

Data1.Recordset!NIM = Text1.Text 

Data1.Recordset!nama = Text2.Text 

Data1.Recordset!alamat = Text3.Text 

Data1.Recordset!prodi = Combo1.Text 

Data1.Recordset.Update 

Data1.Refresh 

End If 

 

If tombol = "TAMBAH" Then 

Data1.Recordset.AddNew 

Data1.Recordset!NIM = Text1.Text 

Data1.Recordset!nama = Text2.Text 

Data1.Recordset!alamat = Text3.Text 

Data1.Recordset!prodi = Combo1.Text 

Data1.Recordset.Update 

Data1.Refresh 

End If 

 

kosong 

tdksiap 

simpan.Enabled = False 

batal.Enabled = False 

tambah.Enabled = True 

keluar.Enabled = True 

ubah.Enabled = True 

hapus.Enabled = True 

End Sub 

Private Sub tambah_Click() 

tombol = "TAMBAH" 

siap 

kosong 

Text1.SetFocus 

batal.Enabled = True 

simpan.Enabled = True 

tambah.Enabled = False 

keluar.Enabled = False 

ubah.Enabled = False 

hapus.Enabled = False 

End Sub 

133 

 

7) Tombol Batal 

 

 

 

 

8) Tombol Ubah 

 

 

 

 

9) Tombol Hapus 

 

 

 

 

10) Tombol Keluar 

 

 

 

 

 

Private Sub batal_Click() 

kosong 

tdksiap 

batal.Enabled = False 

simpan.Enabled = False 

keluar.Enabled = True 

tambah.Enabled = True 

ubah.Enabled = True 

hapus.Enabled = True 

tambah.SetFocus 

End Sub 

Private Sub ubah_Click() 

tombol = "UBAH" 

siap 

Text1.SetFocus 

batal.Enabled = True 

simpan.Enabled = True 

tambah.Enabled = False 

keluar.Enabled = False 

ubah.Enabled = False 

hapus.Enabled = False 

End Sub 

Private Sub hapus_Click() 

jawab = MsgBox("Yakin Data tersebut akan dihapus 

...?", vbYesNo + vbQuestion, "Konfirmasi") 

If jawab = 6 Then 

    Data1.Recordset.Delete 

       Data1.Refresh 

End If 

 

End Sub 

Private Sub keluar_Click() 

Unload Me 

End Sub 

134 

 

11) DbGrid1  RowColChange 

 

 

 

12) General 

 

 

ADO (ActiveX Data Object) merupakan suatu Object Data yang mempunyai 

kemampuan Data Definition, Data Manipulation dan Database Maintenance 

serta dapat untuk membangun koneksi dengan beberapa jenis database. Untuk 

mengakses database menggunakan ADO ada dua fasilitas yang dapat dipakai 

yaitu  

 ADODC  

ADODC adalah sebuah object sehingga dapat dilihat atau ditambahkan di 

toolbox. Untuk menambahkan objek ini maka lakukan langkah sebagai 

berikut : 

Klik menu Project, pilih Component (atau tekan Ctrl-T), tandai dengan 

memberi tanda cek pada Microsoft ADO Data Control 6.0 (OLEDB). 

Akhiri dengan tekan tombol OK, maka pada Toolbox akan muncul objek 

ADODC. 

 ADODB 

Salah satu cara menghubungkan aplikasi dengan database melalui kode 

program, tanpa menggunakan objek. 

Database yang dapat dikoneksi dengan ADO selain Microsoft Access, dapat 

juga dengan Foxpro, ODBC, SQLServer atau MySQL. 

 

 

 

Private Sub DBGrid1_RowColChange(LastRow As Variant, 

ByVal LastCol As Integer) 

Text1.Text = Data1.Recordset!NIM 

Text2.Text = Data1.Recordset!nama 

Text3.Text = Data1.Recordset!alamat 

Combo1.Text = Data1.Recordset!prodi 

End Sub 

Dim tombol As String 

135 

 

4. Koneksi database dengan ADODB 

Di dalam Visual Basic, Object ADODB yang sering digunakan adalah 

ADODB.Connection dan ADODB.Recordset. Untuk dapat membuat suatu 

variable dari ADODB ini kita harus terlebih dahulu memilih references di 

dalam Visual Baic yaitu Microsoft ActiveX Data Object. Ikuti langkah berikut 

 Pilih menu Project – References 

 Pilih Microsoft ActiveX Data Objects 2.1 Library – Klik OK 

Module sering digunakan di dalam pendeklarasian Connection dan Recordset 

untuk penggunaan database , sehingga Object Connection dan Recordset 

tersebut dapat digunakan pada semua bagian di dalam project yang anda buat. 

 Connection digunakan untuk melakukan koneksi ke database yang dipilih 

dengan perintah open ataupun mengeksekusi sintaks-sintaks SQL dengan 

perintah execute. Untuk membuka koneksi ke database gunakan perintah 

open yang diikuti oleh connection string yang dapat dihapalkan ataupun 

menggunakan bantuan seperti control ADODC atau file extension .UDL 

 Recordset digunakan untuk menampung data (bisa berasal dari 1/ lebih 

tabel) yang merupakan hasil eksekusi  perintah sql select, syntax:  

select [nama kolom] from [nama tabel] where [kondisi] 

Tambahkan Module pada program VB Anda (Project – Add Module), 

kemudian ketikkan kode program koneksi database berikut di Module Anda  

 

 

 

 

 

 

Hasil dari koneksi di atas adalah Con akan membuka koneksi ke database 

dengan nama dbAkademik.mdb yang terletak di folder aktif dbAkademik.mdb. 

 

Public Con As ADODB.Connection 

Public Sub OpenConnection() 

    Set Con = New ADODB.Connection 

    Con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 

           "Data Source=" & App.Path & "\dbAkademik.mdb;" & _ 

           "Persist Security Info=False" 

    Con.CursorLocation = adUseClient 

    Con.Open 

End Sub 

136 

 

Contoh Program menggunakan ADODB 

Berikut adalah contoh program olah data Mahasiswa di STMIK Duta Bangsa. 

Atur Form seperti pada contoh gambar 9.8.  

 NIM akan diinput secara otomatis berdasarkan Program Studi, Jenjang, 

Tahun Masuk dan urutan mahasiswa saat daftar ulang. 

 Jenjang Sarjana menawarkan dua program studi yaitu : Sistem Informasi dan 

teknik Informatika. Jenjang Diploma 3 menawarkan dua program studi yaitu : 

Manajemen Informatika dan Teknik Komputer. 

 Kita akan menggunakan MSFlexGrid untuk menmpilkan data. Cara 

menambahkan project MSFlexGrid : Pilih menu Project – Components, Pilih 

Microsoft FlexGrid Control 6.0 – Klik OK 

Berikut tampilan Form yang digunakan : 

 

 

 

Gambar 9.8 Program olah data mahasiswa dengan ADODB 

 

 

 

137 

 

Ketik kode program berikut : 

1. Koneksi Database 

Ketik kode program koneksi database berikut pada Module  

 

 

 

 

 

 

 

2. Kode program di Form_Load 

 

 

 

 

 

 

 

 

 

3. Kode program untuk mengatur Grid 

 

 

 

 

 

 

 

 

 

Public Con As ADODB.Connection 

Public rsMahasiswa As ADODB.Recordset 

Public Sub OpenConnection() 

    Set Con = New ADODB.Connection 

    Con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 

           "Data Source=" & App.Path & "\dbAkademik.mdb;" & _ 

           "Persist Security Info=False" 

    Con.CursorLocation = adUseClient 

    Con.Open 

End Sub 

Private Sub Form_Load() 

OpenConnection 'Memanggil koneksi database dari Module 

 

'Mengkoneksikan rsMahasiswa ke tabel tabel Mahasiswa 

Set rsMahasiswa = New ADODB.Recordset 

rsMahasiswa.Open "Select * From Mahasiswa", Con, adOpenStatic, 

adLockOptimistic 

 

'Memanggil sub TampilData 

'Digunakan untuk menampilkan data di Grid 

TampilData 

 

End Sub 

Sub AturGrid() 

    Grid.Rows = 1 

    Grid.Cols = 5 

    Grid.ColWidth(0) = 500 

    Grid.ColWidth(1) = 1000 

    Grid.ColWidth(2) = 2000 

    Grid.ColWidth(3) = 2000 

    Grid.ColWidth(4) = 2000 

     

    Grid.TextMatrix(0, 0) = "No" 

    Grid.TextMatrix(0, 1) = "NIM" 

    Grid.TextMatrix(0, 2) = "Nama" 

    Grid.TextMatrix(0, 3) = "Alamat" 

    Grid.TextMatrix(0, 4) = "Program Studi" 

     

End Sub 

138 

 

4. Kode program untuk menampilkan data di Grid 

 

 

 

 

 

 

 

 

 

5. Kode program Sub Rutin 

 

 

 

 

 

 

 

 

 

 

6. Kode program Form Activate 

 

 

 

 

Sub TulisData() 

Dim i As Integer 

    i = 0 

    Do While Not rsMahasiswa.EOF 

        i = i + 1 

        Grid.AddItem (i & vbTab & rsMahasiswa(0) & vbTab & _ 

        rsMahasiswa(1) & vbTab & rsMahasiswa(2) & vbTab & _ 

        rsMahasiswa(3)) 

        rsMahasiswa.MoveNext 

    Loop 

End Sub 

 

Sub TampilData() 

Set rsMahasiswa = New ADODB.Recordset 

rsMahasiswa.Open "Select * From Mahasiswa " & _ 

"Order By NIM", Con, adOpenStatic, adLockOptimistic 

AturGrid 

TulisData 

End Sub 

Private Sub Form_Activate() 

kosong 

tdksiap 

batal.Enabled = False 

simpan.Enabled = False 

tambah.SetFocus 

End Sub 

Sub kosong() 

Text1.Text = "" 

Text2.Text = "" 

Text3.Text = "" 

Combo1.Text = "" 

End Sub 

 

Sub siap() 

Text1.Enabled = True 

Text2.Enabled = True 

Text3.Enabled = True 

Combo1.Enabled = True 

End Sub 

 

Sub tdksiap() 

Text1.Enabled = False 

Text2.Enabled = False 

Text3.Enabled = False 

Combo1.Enabled = False 

End Sub 

139 

 

7. Kode program Tombol Tambah 

 

 

 

 

 

 

8. Kode program Tombol Simpan 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Private Sub tambah_Click() 

tombol = "TAMBAH" 

siap 

kosong 

Text1.SetFocus 

batal.Enabled = True 

simpan.Enabled = True 

tambah.Enabled = False 

keluar.Enabled = False 

ubah.Enabled = False 

hapus.Enabled = False 

End Sub 

Private Sub simpan_Click() 

If tombol = "UBAH" Then 

Set rsMahasiswa = New ADODB.Recordset 

    rsMahasiswa.Open "Select * From Mahasiswa where NIM = 

'" & Text1.Text & "'", Con, adOpenStatic, adLockOptimistic 

    With rsMahasiswa 

       !NIM = Text1.Text 

        !prodi = Combo1.Text 

        !nama = Text2.Text 

        !alamat = Text3.Text 

        .Update 

    End With 

 

End If 

 

If tombol = "TAMBAH" Then 

Set rsMahasiswa = New ADODB.Recordset 

    rsMahasiswa.Open "Select * From Mahasiswa", Con, 

adOpenStatic, adLockOptimistic 

    With rsMahasiswa 

        .AddNew 'Menambahkan data baru 

        !NIM = Text1.Text 

        !prodi = Combo1.Text 

        !nama = Text2.Text 

        !alamat = Text3.Text 

        .Update 

    End With 

 

End If 

 

kosong 

tdksiap 

simpan.Enabled = False 

batal.Enabled = False 

tambah.Enabled = True 

keluar.Enabled = True 

ubah.Enabled = True 

hapus.Enabled = True 

TampilData 

End Sub 

140 

 

9. Kode Program Tombol Batal 

 

 

 

 

 

 

 

10. Kode Program Tombol Ubah 

 

 

 

 

11. Kode Program Tombol Hapus 

 

 

 

 

12. Kode  Program Tombol Keluar 

 

 

 

13. Kode Program General Deklaration 

 

 

14. Kode Program Text1 Keypress 

 

 

 

 

 

Private Sub batal_Click() 

kosong 

tdksiap 

batal.Enabled = False 

simpan.Enabled = False 

keluar.Enabled = True 

tambah.Enabled = True 

ubah.Enabled = True 

hapus.Enabled = True 

tambah.SetFocus 

End Sub 

Private Sub ubah_Click() 

tombol = "UBAH" 

siap 

Text1.SetFocus 

End Sub 

Private Sub hapus_Click() 

tombol = "HAPUS" 

siap 

Text1.SetFocus 

End Sub 

Private Sub keluar_Click() 

Unload Me 

End Sub 

Dim tombol As String 

Private Sub Text1_KeyPress(KeyAscii As Integer) 

 

Set rsMahasiswa = New ADODB.Recordset 

rsMahasiswa.Open "Select * From Mahasiswa Where NIM = '" & 

Text1.Text & "'", Con, adOpenStatic, adLockOptimistic 

 

If KeyAscii = 13 Then  'Jika ditekan Enter 

With rsMahasiswa 

141 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

If tombol = "UBAH" Then 

        If .EOF Then 

         MsgBox "NIM " & Text1.Text & " belum ada" 

         Text1.SetFocus 

        Else 

        Text2.SetFocus 

         Text2.Text = !nama 

         Text3.Text = !alamat 

         Combo1.Text = !prodi 

        End If 

       

    ElseIf tombol = "HAPUS" Then 

        If .EOF Then 

         MsgBox "NIM " & Text1.Text & " belum ada" 

         Text1.SetFocus 

        Else 

         Text2.Text = !nama 

         Text3.Text = !alamat 

         Combo1.Text = !prodi 

          

         pesan = MsgBox("Apakah Anda yakin menghapus NIM " & _ 

                Text1.Text & " ?", vbYesNo, "Hapus Data") 

        If pesan = vbYes Then 

            Set rsMahasiswa = New ADODB.Recordset 

            rsMahasiswa.Open "Select * From Mahasiswa where NIM = '" 

& Text1.Text & "'", Con, adOpenStatic, adLockOptimistic 

            rsMahasiswa.Delete 

        End If 

 

        End If 

    End If 

End With 

TampilData 

End If 

 

'hanya boleh diisi angka atau backspace 

If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = 

vbKeyBack) Then 

Beep 

KeyAscii = 0 

End If 

 

End Sub 

142 

 

C. LatihanLATIHAN 

Buka kembali program yang sudah Anda buat seperti gambar 9.8. 

 Tambahkan Tabel Dosen dan Tabel Mata Kuliah pada Database Akademik 

yang sudah Anda buat. Atur Field yang dibutuhkan untuk masing-masing tabel. 

 Tambahkan Form untuk Olah Data Dosen dan Form untuk Olah Data Mata 

Kuliah dan ketik kode programnya. 

DAFTAR PUSTAKA 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

143 

 

BAB X 

MENCETAK DATA 

 

A. Pendahuluan 

Mencetak data merupakan hasil akhir dari rangkaian proses pengolahan 

data untuk tujuan pelaporan atau dokumentasi. Misalnya proses cetak yang 

digunakan untuk pelaporan adalah cetak kwitansi pembayaran dari transaksi 

pembelian/penjualan yang telah dilakukan. 

Microsoft Visual Basic 6.0 mempunyai beberapa cara dalam mencetak 

data, diataranya lewat kode program yang dirancang sendiri, data report atau 

memanfaatkan Report designer seperti cristal report dan sebagainya. 

Mencetak lewat kode program memang lebih mudah disbanding lewat 

report designer tetapi kemampuan cetaknya kurang begitu bagus. Sedangkan 

cristal report sendiri sebenarnya adalah program terpisah dari Microsoft visual 

basic 6.0, tetapi karena komponen inimendukung kinerjanya maka banyak 

programmer yang suka membuat laporan dengan bantuan cristal report. 

 

B. Materi 

1. Mencetak Data dengan Kode Program 

Sebelum membahas  bagaimana cara mencetak data ke printer, terlebih dahulu 

akan dipaparkan bagaimana cara mencetak data ke form. Pada pembahasan 

sebelumnya sudah dipaparkan tentang mencetak data ke form, dimana proses 

cetaknya lebih ditekankan pada konsep perulangan (looping). Data yang 

dicetak dapat ditampung dalam suatu konstanta atau variabel. 

Perintah dasar untuk mencetak data dengan menggunakan kode-kode program 

adalah : 

<objek>.Print <data yang akan dicetak> 

Contoh : 

a) Mencetak Data ke Form dengan Kode Program 

DIM Ucapan As String 

Ucapan = ”Selamat Datang di STMIK Duta Bangsa” 

Print Ucapan 

144 

 

 

Gambar 10.1 Hasil Cetakan ke Form 

b) Mencetak data ke Printer dengan Kode Program 

DIM Ucapan As String 

Ucapan = ”Selamat Datang di STMIK Duta Bangsa” 

Printer.Print Ucapan 

 

Terdapat beberapa perintah cetak yang sering digunakan pada proses cetak 

ke printer dari kode-kode program, seperti dijelaskan pada tabel berikut ini : 

Tabel 10.1 Perintah Mencetak Data 

Perintah Keterangan 

Printer.CurrentX  = 0 

Printer.CurretY = 0 

Perintah ini digunakan  untuk mengatur posisi head 

printer pada awal kertas yaitu pojok kiri atas kertas. 

Printer.EndDoc 

Data-data yang sedang dicetak akan masuk ke 

dalam Print Spooler yaitu daftar antrian cetak dari 

printer yang aktif. Sedang untuk melaksanakan 

pencetakan secara nyata harus ditambahkan 

perintah Printer.EndDoc 

Printer.NewPage 

Perintah ini menyababkan head printer berpindah 

ke awal halaman berikutnya. 

Printer.KillDoc 

Menghentikan proses cetak secara mendadak 

(biasanya diikuti oleh kondisi tertentu) 

Printer.Orientation = 

<number> 

Menentukan bentuk orientasi cetakan data untuk 

cetakan portrait (tegak) atau  Landscape (mendatar) 

Nilai 1 Portrait dan 2 Landscape 

 

145 

 

c) Contoh Program 

Desain Form seperti berikut : 

 

 

Kode program untuk form Cetak 

Private Sub keluar_Click() 

End 

End Sub 

 

Private Sub preview_Click() 

Form76.Show 

End Sub 

 

Private Sub printer_Click() 

Dim xno  As String 

printer.CurrentX = 0 

printer.CurrentY = 0 

no = 1 

printer.FontSize = 14 

printer.FontBold = True 

printer.Print Tab(15); "Laporan Data Mahasiswa" 

printer.FontSize = 10 

printer.Print "----------------------------------------" & _ 

 "-----------------------------------------------------" 

printer.Print Tab(1); "No. "; 

printer.Print Tab(5); "NIM"; 

printer.Print Tab(15); "Nama Mahasiswa"; 

printer.Print Tab(40); "Alamat"; 

printer.Print Tab(58); "Program Studi"; 

Data1.Recordset.MoveFirst 

Do While Not Data1.Recordset.EOF 

With Data1.Recordset 

printer.Print Tab(1); Str(no); 

146 

 

 

printer.Print Tab(5); .Fields(0); 

printer.Print Tab(15); .Fields(1); 

printer.Print Tab(40); .Fields(2); 

printer.Print Tab(58); .Fields(3); 

End With 

no = no + 1 

Data1.Recordset.MoveNext 

Loop 

End Sub 

 

2. Mencetak Data dengan Data Report 

Data Report adalah suatu laporan mengenai database yang disediakan oleh 

Visual Basic. Laporan ini dapat terbentuk jika Data Environment sudah 

didesain. Data Environment  merupakan penghubung antara database yang 

telah didesain dengan Data Report yang akan ditampilkan. 

a) Menggunakan Data Environment 

Buka kembali program yang Anda buat seperti pada gambar 9.7 (Bab 9). 

Tambahkan Data Environment dengan cara sebagai berikut : 

 Pastikan Data Environment dan Data Report sudah diaktifkan dengan 

cara : pilih Project – Components, pilih tab Designers, Aktifkan 

(centang) Data Environent dan Data Report- Klik OK. 

 Pilih Project – Add Data Environment. Klik kanan Connection1-Pilih 

Properties. Pada bagian tab Provider pilih Microsoft Jet 3.51 OLE DB 

Provider (untuk Access 1997), Microsoft Jet 4.0 OLE DB Provider 

(untuk Access 2000-2003). 

147 

 

 

Gambar 10.2 Menggunakan Data Environment 

 Klik Next>>, pada bagian Select or enter a database name, browse 

nama database (dbAkademik.mdb) 

 Klik tombol Test Connection, jika sukses maka muncul messagebox 

seperti berikut : 

 

 

 

 

Gambar 10.3 MessageBox Koneksi database sukses 

 Tambahkan Command untuk koneksi ke tabel, Klik kanan pada 

Connection1, pilih Add Command. 

 Klik kanan pada Command1 pilih properties. Pada Connection pilih 

Connection1. Pada Database Object pilih Table. Pada Object Name 

pilih tbMahasiswa. Klik OK 

 

 

 

148 

 

 

 

 

 

 

 

 

 

 

Gambar 10.4 Properti Command1 untuk koneksi ke tabel 

 Klik OK. Klik tanda   pada Command1, maka field-field dari tabel 

tbMahasiswa akan ditampilkan 

 

Gambar 10.5 Field-field pada Command1 (tbMahasiswa) 

b) Menggunakan Data Report 

Setelah Data Environment kita atur, kemudian buat laporannya 

menggunakan Data Report. Ikuti langkah berikut : 

 Pilih menu Project – Add Data Report 

 

 

 

149 

 

Tabel 10.1 Bagian Data Report 

Bagian Keterangan 

Report Header Berisi judul laporan 

Page Header Berisi judul kolom data yang akan ditampilkan 

Detail Berisi nama field yang akan ditampilkan pada kolom 

Page Footer Berisi catatan kaki di akhir kolom-kolom report 

Report Footer Berisi catatan kecil/keterangan report 

Selain jendela Data Report, pada toolbox akan muncul sebuah tab Data 

Report yang berisi : 

 

 

 

 

Gambar 10.6 Toolbox pada tab Data Report 

Tabel 10.2 Toolbox pada tab Data Report 

Nama Kontrol Keterangan 

RptLabel Kontrol untuk memberikan label pada report 

RptTextBox Kontrol serupa textbox yang hanya menampilkan teks 

database saat runtime 

RptImage Kontrol untuk menempatkan image pada report 

RptLine Kontrol yang dapat menggambar garis secara 

horizontal, vertical maupun diagonal 

RptShape Kontrol untuk menggambar shape pada report 

RptFunction Kontrol yang dapat menset hasil perhitungan data 

 Letakkan kontrol RptLabel pada bagian Report Header. Ubah Propery 

Caption menjadi ”Laporan Data ahasiswa”, dan propery Aligment 

menjadi  2-rptJustifyCenter 

 Klik DataReport1, ubah property DataSource, pilih 

DataEnvironment1 

 Isi DataMember denga nama Command1 

 Klik menu bar Window, Pilih Cascade. Letakkan Jendela Data 

Environment1 di atas jendela Data Report. 

 Drag and Drop field-filed yang ada di Jendela DataEnvironent1 ke 

Jendela Data Report di bagian Detail. 

150 

 

 Pindahkan bagian yang diakhiri tanda “:” ke bagian Page Header 

 

Gambar 10.7 Meletakkan Field-Field ke Data Report 

 Desain akhir Data Report adalah sebagai berikut : 

 

Gambar 10.8 Desain Akhir Data Report 

 

3. Menctak data dengan Crystal Report 

Selain Data Report, kita juga bisa menggunakan Crystal Report dalam 

pembuatan laporan. Crystal Report adalah suatu form khusus berbentuk seperti 

lembaran format naskah yang ingin dicetak.  

Crystal Report dapat berdiri sendiri dapat pula menjadi satu dengan project 

Visual  

151 

 

Basic yang anda buat. Bila berdiri sendiri, report tersebut pun dapat dipanggil 

dari  

project Visual Basic dengan Crystal Report Control sehingga report yang telah 

anda buat dapat digunakan oleh beberapa project sekaligus.  

a) Membuat Laporan dengan Crystal Report 

 Pertama-tama Anda harus Install dulu Software Crystal Report. Pada 

kesempatan kali ini menggunakan Crystal Report 8.5. 

 Buka program Crystal Report , maka pada tampilan windows akan 

muncul tampilan seperti gambar di bawah ini 

 

 

 

 

 

 

 

 

 

 

 

 

Gambar 10.9 Crystal Report Gallery 

 Pilihlah Report Expert dan Standard Expert untuk laporan standard 

dan pilih OK untuk melanjutkan. Setelah itu akan muncul semua 

property dari report yang akan kita buat, yang akan ditampilkan 

seperti gambar : 

 

 

152 

 

 

 

 

 

 

 

 

 

 

 

Gambar 10.10 Standard Report Expert 

 Pertama kali kita harus memasukkan datasource dari report yang akan 

kita buat (darimana data yang mau kita tampilkan) dengan memilih 1 

dari ketiga jenis data yang telah tersedia (Database, Crystal SQL 

Query, dan Crystal Dictionary). Untuk menampilkan data dari 

database seperti Microsoft Access, kita akan memilih Database. 

 Pilih DatabaseFile dan pilih find database file dan click add, cari 

database yang akan ditampilkan. 

 Pilihlah datasource yang diinginkan dan click Add, setelah itu click 

Close, maka dengan ini, report yang akan kita buat telah ditentukan 

datasourcenya. Setelah itu pilihlah tombol Next untuk menuju bagian 

field yang akan kita tampilkan di dalam report. 

 Pilihlah field-field yang akan kita tampilkan di report, dan bila sudah 

selesai, click finish untuk menuju design report kita. 

 Buat desainya, simpan Report, misal rptMahasiswa 

b) Koneksi Crystal Report dengan Visual Basic 

 Pastikan Crystal Report sudah terinstall dan Anda sudah selesai 

membuat desain reportnya dan sudah Anda simpan dalam satu folder 

dengan program Visual Basic yang Anda buat. 

153 

 

 Buka kembali program yang telah Anda buat di Bab 9 (Gambar 9.8). 

Tambahkan tombol untuk cetak data. 

 Tambahkan object Crystal Report di toolbox dengan cara pilih Project 

- Components – Pilih tab Controls - pilih Crystal Report Viewer 

Control tekan OK. Kemudian tambahkan objek tersebut ke dalam 

Form 

 Berikut kode program untuk mencetak data di VB 

 

 

 

 

 

 

   

 

 

 

Beberapa property dari Crystal Report yang biasa digunakan di dalam 

aplikasi.  

 .Reset - Digunakan untuk mengembalikan kondisi report ke dalam 

kondisi semula, biasanya properti ini digunakan pertama kali sebelum 

properti lainnya . 

 .Connect - Digunakan untuk menenetukan jenis conection yang  

digunakan Oleh report tersebut, biasanya diisi oleh  variabel 

ADODB.Connection yang kita buat.  

 .ReportFileName - Digunakan untuk menentukan report yang akan 

kita      tampilkan Beserta path dari report tersebut.   

 .StoreProcedureParam - Digunakan bila datasource dari report yang 

akan kita       panggil adalah storeProcedur yang memiliki parameter  

'Mencetak semua data mahasiswa 

Sub CetakAll () 

rptMhs.Reset 

rptMhs.Connnect = Con 

rptMhs.ReportFileName = App.Path & "\RptMahasiswa.rpt" 

rptMhs.WindowState = crptMaximized 

rptMhs.RetrieveDataFiles 

rptMhs.Action = 1 

End Sub  

 

'Mencetak berdasarkan Program Studi 

Sub CetakProdi() 

rptMhs.Reset 

rptMhs.Connnect = Con 

rptMhs.ReportFileName = App.Path & "\RptDep.rpt" 

rptMhs.SelectionFormula = ("{tbMahasiswa.Prodi}='" & cbProdi.Text & "'") 

rptMhs.WindowState = crptMaximized 

rptMhs.RetrieveDataFiles 

rptMhs.Action = 1 

End Sub 

154 

 

 .Formula - Digunakan apabila di dalam report yang kita buat, terdapat 

Formula yang ingin kita isi dari VB.  

 .SelectionFormula - Digunakan untuk memfilter data dari report yang 

ingin kita     tampilkan dengan menyebutkan nama Datasource.Nama 

Field  

 .WindowState -Digunakan untuk menentukan windowstate dari 

report pada saat pertama kali tampil apakah fullscreen, minimize dsb.  

 .Action -Digunakan untuk memunculkan report yang akan kita  

tampilkan dengan memberinya angka 1 (.Action=1) 

 

SOAL LATIHAN 

C. Latihan 

 

Buka kembali program yang sudah Anda buat pada soal Latihan Bab 9. Buatlah 

Laporan untuk Data Dosen dan Data Mata Kuliah dengan Data Report dan Crystal 

Report. 

 

 

 

 

 

 

DAFTAR PUSTAKA 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

155 

 

BAB XI 

MERANCANG MENU PROGRAM 

 

A. Pendahuluan 

Menu adalah serangkaian pilihan yang dapat dipilih (di-klik atau di-

enter) dengan tujuan untuk melakukan tugas-tugas tertentu. Umumnya suatu menu 

diitempatkan pada bagian atas dari programaplikasi. Tetapipada aplikasi tertentu 

(misalnya aplikasi pada website), pembuatan menusudah mengacu pada 

pemakaian gambar-gambar yang menarik. Umumnya gambar-gambar tersebut 

dibuat oleh software lain seperti photoshop, corel atau bahkan software animasi 

seperti flash. 

Menu utama (menu bar) dalam suatu proyekmerupakan lokomotif utama 

dalam suatu program karena keberadaann menu bertujuan untuk mengintegrasikan 

program-program yang digunakan. Dengan demikian pemakai program tidak 

kesulitan dalam menguunakan program yang sedang dijalankan. Menu bar terletak 

di bawah title bar adalah tempat keberadaan menu, yang menampilkan Menu 

Title. 

Jika suatu menu di klik (misalnya menu file), sebuah daftar yang berisi 

perintah-perintah (menu  item) terbuka ke arah bawah. Menu item terdiri dari 

perintah-perintah (seperti New,  Open sampai dengan exit), separator bar, dan sub 

menu title. Sedang masing-masing item mempunyai tugast ersendiri sesuai dengan 

kode program yang dipasangkan pada menu tersebut.  Beberapa item menu 

menghasilkan proses secara langsung, misalnya menu exit akan langsung menutup 

suatu program. 

156 

 

 

Gambar 11.1 Elemen-elemen menu pada visual basic 

 

 

Gambar 11.2 Contoh menu program aplikasi 

157 

 

B. MateriRI 

1. MDI Form 

Pada Visual Basic, anda dapat mengembangkan aplikasi dengan interface 

sebagai berikut :  

 SDI (Single Document Interface)  

 MDI (Multiple Document Interface)  

Pada aplikasi SDI, setiap form merupakan form-form yang berdiri sendiri, 

Aplikasi SDI pada windows terdapat pada aplikasi seperti Notepad, WordPad 

dan Paint. 

Sedangkan aplikasi seperti Visual Basic menggunakan MDI, yaitu terdiri dari 

suatu MDIForm, dan didalamnya merupakan form-form anak (MDIChild). 

Ada beberapa hal yang harus diperhatikan dalam penggunaan MDIForm adalah 

 Didalam satu project hanya dapat terdiri dari satu MDIForm  

 Anda tidak dapat menempatkan kontrol-kontrol secara langsung pada 

MDIForm, kecuali kontrol yang memiliki properti Alignment, atau 

menempatkannya diatas kontainer seperti Picturebox.  

 Anda tidak dapat menggunakan metode penggambaran (Print, Line, Circle, 

dan PSet) seperti pada form umumnya.  

a) Membuat MDI Form di Visual Basic 

 Kita harus tambahkan dengan klik pada menu  Project - Add MDI Form. 

Klik Open. 

 Pada Project Explorer akan muncul dua buah form yaitu Form1 dan 

MDIForm1. Ubahlah properties MDIChild dari Form1 menjadi true. Hal 

ini menandakan Form1 adalah sebagai form anak dari MDIForm1. 

Settinglah pada Project Properties agar Form utamnya adalah 

MDIForm1. 

b) Karakteristik dari MDI Form 

 Semua Cchild Form tidak dapat dipindahkan keluar dari MDI Form.  

 Ketika suatu Child Form diminimize, akan menjadi icon dibawah MDI 

Form.  

158 

 

 Anda dapat menentukan apakah Child Form secara otomatis 

ditampilkan atau tidak dengan menggunakan properti 

AutoShowChildren pada MDIForm.  

 Jika pada Child Form ada menu, maka menu akan ditampilkan pada 

MDIform menu.  

Pada MDIform anda tidak dapat menempatkan kontrol-kontrol visible yang 

tidak mendukung alignment, kecuali kalau anda menempatkannya kedalam 

suatu kontainer seperti Picturebox, dan Toolbar. Sedangkan kontrol non-

visible seperti Timer dan CommonDialog box dapat ditempatkan diatas 

MDIForm. 

c) Mendapatkan MDI Child yang sedang aktif. 

Untuk mendapatkan form-form yang sedang aktif di dalam suatu MDIForm, 

anda dapat menggunakan properti ActiveForm, contoh : 

 

 

 

 

 

d) Mengatur MDI Child dalam jendela MDI form 

Anda dapat menggunakan metoda Arrange untuk mengatur penyusunan 

form-form yang sedang aktif didalam suatu MDI Form. Metoda Arrange ini 

diikuti oleh suatu parameter yang menentukan jenis penyusunan yang akan 

dilakukan, contoh : 

 

 

 

 

 

 

 

 

Private Sub MDIForm_QueryUnload(Cancel As Integer, UnloadMode As 

Integer) 

If Not Me.ActiveForm Is Nothing Then 

   MsgBox "Masih ada Form yang aktif" 

   Cancel = True 

End If 

End Sub 

 

Private Sub mnuTileHorizontally_Click() 

    Arrange vbTileHorizontal 

End Sub 

Private Sub mnuTileVertically_Click() 

    Arrange vbTileVertical 

End Sub 

Private Sub mnuCascade_Click() 

    Arrange vbCascade 

End Sub 

Private Sub mnuArrangeIcons_Click() 

    Arrange vbArrangeIcons 

End Sub 

 

159 

 

2. Menu Editor 

Pembuatan menu pada Visual Basic dapat dilakukan dengan bantuan Menu 

Editor yang terdapat pada Menu Tools-Menu Editor. Pada dasarnya setiap item 

menu memiliki Caption dan sebuah Nama. Anda dapat membentuk Kunci 

Akses dengan menggunakan tanda & (ampersand) pada Caption dari menu 

tersebut. Untuk membuat menu anda cukup mengetikan Caption dan Name, 

selanjutnya klik pada Next, dan ketikkan menu yang berikutnya, sampai 

selesai. Selanjutnya adalah menbuat Sub Menu dengan melakukan klik pada 

panah kanan dan sebaliknya.  

a) Membuat Menu di MDI Form 

 

 

 

 

 

   

 

 

Gambar 11.3 Window Menu Editor 

Setelah menu diatur pada Window Menu Editor, maka berikut hasilnya : 

 

 

 

 

Gambar 11.4 Tampilan menu yang dibuat di MDIForm 

Untuk memunculkan frMahasiswa pada saat klik menu Mahasiswa maka 

ketikkan kode berikut pada jendela MDIForm kode editor. 

 

160 

 

 

 

 

b) Membuat Pop Up Menu 

Pada Visual Basic, anda dapat membuat menu pop up dengan 

memanfaatkan menu Editor untuk mendefinisikan nama kelompok menu 

Pop Up beserta Sub Menunya, dan menonaktifkan option Visible dari 

kelompok menu tersebut. 

   

 

 

 

Sehingga kalau dilakukan klik kanan pada form akan menanpilkan suatu 

PopUp menu yang berupa Sub Menu dari mnAtur. 

   

 

 

 

 

 

 

 

Gambar 11.5 Tampilan Pop Up Menu di MDIForm 

 

 

 

 

 

 

 

 

 

Private Sub MDIForm_MouseDown(Button As Integer, Shift As 

Integer, X As Single, Y As Single) 

If Button And vbRightButton Then 

    PopupMenu mnAtur 

End If 

End Sub 

Private Sub mnMhs_Click() 

frMahasiswa.Show 

End Sub 

161 

 

C. LatihanOALLATIHAN 

Buka kembali program yang sudah Anda buat pada Bab 9. Koneksikan dengan 

Crystal Report (rptMahasiswa). Tambahkan MDIForm dan tambahkan menu 

Laporan untuk menampilkan laporan Mahasiswa, Dosen, Mata Kuliah dan 

laporan lain yang dibutuhkan.  

 

DAFTAR PUSTAKA 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

162 

 

BAB XII 

FILE EXE DAN SETUP EXE 

 

 

A. Pendahuluan 

Suatu program aplikasi yang telah dibuat dengan visual basic 6.0 ingin 

didistribusikan ke pengguna yang lain. Prosesnya tidak semudah yang  kita 

bayangkan, misalnya denganmengcompile visual basic project yang telah dibuat 

menjadi file .Exe. selanjutnya file .Exe ini dicopykan ke computer lain. Langkah ini 

jelas salah karena untuk bias berjalan di computer lain masih dibutuhkan file-file 

pendukung. 

 

B. Materi 

1. File Exe 

Setelah  selesai membuat  project  anda  dapat menyimpannya  dan membuat 

file exe nya. Jika program aplikasi yang sudah dibuat belum dicompile dalam 

bentuk EXE maka akan dibutuhkan VB setiap kali menjalankannya. Agar user 

yang  lain  bisa  juga  menjalankan  program  yang  telah  kita  buat,  maka 

program  yang  telah  selesai  kita  buat  harus  di  compile  dulu  dalam  bentuk 

exe.  

 Untuk membuat File EXE buka kembali projek (*.VBP) yang telah selesai 

anda buat (misalnya projek mahasiswa yang telah kita buat) 

 kemudian klik menu File- Make  Project.exe  lalu  simpan  file  .exe  

tersebut  dan  lanjutkan mengklik OK  

 Tunggu  sampai  proses  kompilasi  selesai  dan  coba  keluar  dari Visual 

Basic. Lalu jalankan file.exe yang telah anda buat. 

 

2. Setup Exe 

Selain  file  .exe  yang  lebih ngetrend  lagi  yaitu  file  setup.exe. Membuat  

file Setup.exe  tidaklah  sesulit  yang  dibayangkan  hanya  dengan  beberapa  

klik anda  sudah  dapat membuat  file  Setup.exe.  

163 

 

 Untuk membuat setup.exe kita harus mengaktifkan terlebih dahulu Package 

& Deployment Wizard. Klik Menu Add Ins – Add Ins Manager, kemudian 

aktifkan Package and Deployment Wizard. 

 

Gambar 12.1 Add-Ins Manager 

 Untuk  membuat  Setup.exe menu Add-Ins - Package  &  Deployment  

Wizard  | sehingga  akan  tampil  window seperti gambar dibawah ini.  

 

   

 

 

 

 

 

 

 

 

 

Gambar 12.2 Package and Deployent Wizard 

164 

 

 Kemudian  klik  browse  untuk  mencari tempat  folder  projek  yang  telah  

kita buat  dan  simpan.  Cari  file  .vbp  yang telah  anda  buat,  pastikan  anda  

juga telah  membuat  file  .exe  dalam  satu folder yang sama. Kemudian 

lanjutkan dengan mengklik Package 

 

Gambar 12.3 Kotak Dialog Package and Deployment Wizard 

 Browse : digunakan  untuk mencari file exe dari project yang 

sudah dibuat. 

 Compile : digunakan untuk melakukan proses kompilasi 

program dari proyek yang pernah dibuat. Karena masih baru, klik 

tombol compile ini. Tetapi jika file proyeknya sudah pernah di 

compile, pilih tombol recompile untuk melakukan proses kompilasi 

ulang. 

 Cancel  : pilihan ini akan membatalkan seluruhproses yang 

sedang anda kerjakan. 

 Setelah diklik Package akan muncul window seperti gambar 12.2 

 

 

   

 

 

Gambar 12.4 Package and Deployent Wizard-Package Type 

165 

 

 Pilih Package type = Standard Setup Package.  Lanjutkan dengan mengklik 

Next Setelah itu akan muncul window yang meminta anda untuk menyimpan 

hasil kompilasi Setup.exe. Pilih tempat folder yang anda inginkan Kemudian 

klik Next. Maka muncul Window yang menampilkan file-file yang akan 

dipackage. Jika Anda menggunakan database (misal : dbAkademik.mdb) dan 

file database tersebut belum ada di list, maka tekan tombol Add untuk 

menambahkan file database tersebut. 

   

 

 

 

 

 

 

Gambar 12.5 Package and Deployent Wizard-Included Files 

 Setelah  anda  klik  Next  akan  muncul  Window  Cab  Options,  pilih  

pada defaultnya yaitu Single Cab, kemudian lanjutkan dengan klik Next. 

 Setelah anda klik Next akan muncul Window Installation Title, masukkan 

sesuai dengan nama project yang kita buat. Kemudian lanjutkan dengan 

mengklik Next. 

 Setelah anda klik Next akan muncul Window Start Menu Items, pilih pada 

defaultnya, lanjutkan dengan mengklik Next 

 Setelah  anda  klik  Next  akan  muncul  Window  Install  Location  yang 

memberitahu  ke  kita  tempat  /  lokasi  instalasi,  biarkan  pada  

defaultnya, lanjutkan dengan mengklik Next 

 Setelah anda klik Next akan muncul Window Shared Files, lanjutkan 

dengan mengklik Next. Sehingga akan muncul window Finished, biarkan 

pada defaultnya, kemudian klik Finish. 

166 

 

 Tunggu  beberapa  saat  sampai  hasil  kompilasinya  selesai.  Install hasil 

setup file yang sudah Anda buat. Jalankan dari start menu windows. 

 

C. Latihan 

 

Buatlah setup file dari program yang Anda buat. Install setup file tersebut, dan 

jalankan program yang sudah Anda instaal dari Start Menu 

 

DAFTAR PUSTAKA 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

167 

 

BAB XIII 

 

MEMBUAT SISTEM SIMPAN PINJAM KOPERASI 

 

 

A. Pendahuluan 

 

Sistem simpan pinjam koperasi, terdapat data master data bunga dan data nasabah, 

sedangkan proses transaksi terdapat transaksi simpan, pinjam, pengembalian dan 

setoran. Untuk laporan yang dibutuhkan laporan nasabah, laporan pinjam, laporan 

simpan, laporan pengembalian dan laporan setoran. 

 

B. Materi 

1. Buat database koperasi.mdb  

  

 

2. Buat Tabel yang dibutuhkan dalam sistem simpan pinjam koperasi 

a) Buat Tabel Nasabah dengan struktur tabel seperti berikut : 

Field Name Type Width Index 

No_rek text 5 primary 

nama text 25  

J_kel text 1  

Tempat_lhr text 20  

Tgl_lahir date 8  

agama text 1  

alamat text 30  

Saldo_spn currency 8  

Saldo_pjm currency 8  

 

 

168 

 

b) Buat tabel pengambilan dengan struktur table seperti berikut : 

Field Name Type Width Index 

No_trans text 5 primary 

no-rek text 5  

Tgl_trans date 8  

Jml_ambil currency 8  

 

c) Buat tabel pinjam dengan struktur table seperti berikut : 

Field Name Type Width Index 

No_trans text 5 primary 

no-rek text 5  

Tgl_trans date 8  

Jml_pinjam currency 8  

 

d) Buat tabel setoran dengan struktur table seperti berikut : 

Field Name Type Width Index 

No_trans text 5 primary 

no-rek text 5  

Tgl_trans date 8  

Jml_setor currency 8  

 

e) Buat tabel simpan dengan struktur table seperti berikut : 

Field Name Type Width Index 

No_trans text 5 primary 

no-rek text 5  

Tgl_trans date 8  

Jml_simpan currency 8  

 

f) Buat tabel bunga dengan struktur table seperti berikut : 

Field Name Type Width Index 

Bunga_spn single 4 Primary 

Bunga_pjm single 4 primary 

 

g) Buat tabel password dengan struktur table seperti berikut : 

Field Name Type Width Index 

password Text 10 Primary 

nama text 10  

 

 

 

169 

 

3. Buat Desain Form untuk memanipulasi data 

a) Desain form login 

 

Kode Program : 

Data1.Recordset.Seek "=", Text2.Text 

    If Data1.Recordset.Fields("password") = Text2.Text Then 

        ok.SetFocus 

    Else 

        MsgBox "Password Salah", vbOKOnly, "Pesan:" 

        Text2.SetFocus 

    End If 

salah: 

End Sub 

 

 

Private Sub selesai_Click() 

End 

End Sub 

 

Private Sub text1_keypress(KeyAscii As Integer) 

If KeyAscii = 13 Then 

    Text2.SetFocus 

End If 

End Sub 

 

Private Sub text2_keypress(KeyAscii As Integer) 

If KeyAscii = 13 Then 

    ok.SetFocus 

End If 

End Sub 

 

 

 

 

 

 

 

 

 

170 

 

b) Desain form bunga 

 

Kode Program : 

Private Sub batal_Click() 

Text1.Visible = True 

Text2.Visible = True 

Text3.Visible = False 

Text4.Visible = False 

mati 

edit.Enabled = True 

keluar.Enabled = True 

batal.Enabled = False 

ok.Enabled = False 

End Sub 

 

Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol 

As Integer) 

On Error GoTo x 

tampilan 

x: 

End Sub 

 

Private Sub edit_Click() 

On Error GoTo x 

Text1.Visible = False 

Text2.Visible = False 

Text3.Visible = True 

Text4.Visible = True 

Text3.Enabled = True 

Text4.Enabled = True 

Text3.BackColor = &H80000005 

Text4.BackColor = &H80000005 

keluar.Enabled = False 

edit.Enabled = False 

ok.Enabled = True 

batal.Enabled = True 

x: 

End Sub 

 

171 

 

Private Sub Form_Load() 

On Error GoTo x 

Text3.Visible = False 

Text4.Visible = False 

mati 

batal.Enabled = False 

ok.Enabled = False 

x: 

End Sub 

 

Private Sub keluar_Click() 

Unload Me 

End Sub 

 

Private Sub ok_Click() 

On Error GoTo x 

Data1.Recordset.Index = "xb_spn" 

Data1.Recordset.Seek "=", Text1.Text 

Data1.Recordset.Index = "xb_pjm" 

Data1.Recordset.Seek "=", Text2.Text 

        If Not Data1.Recordset.NoMatch Then 

           Data1.Recordset.edit 

           Data1.Recordset!bunga_spn = Text3.Text 

           Data1.Recordset!bunga_pjm = Text4.Text 

           Pesan = MsgBox("Yakin Simpan Hasil Editan ??", vbYesNo, 

"PEMBERITAHUAN") 

           If Pesan = vbYes Then 

                    Data1.Recordset!bunga_spn = Text3.Text 

                    Data1.Recordset!bunga_pjm = Text4.Text 

                    Data1.Recordset.Update 

                    Data1.Refresh 

            Else 

            End If 

            End If 

edit.Enabled = True 

keluar.Enabled = True 

batal.Enabled = False 

ok.Enabled = False 

mati 

x: 

End Sub 

 

Private Sub tampilan() 

On Error GoTo x 

With Data1.Recordset 

Text1.Text = !bunga_spn 

Text2.Text = !bunga_pjm 

End With 

172 

 

x: 

End Sub 

 

Private Sub mati() 

On Error GoTo x 

Text1.Enabled = False 

Text2.Enabled = False 

Text3.Enabled = False 

Text4.Enabled = False 

Text1.BackColor = &H80000004 

Text2.BackColor = &H80000004 

Text3.BackColor = &H80000004 

Text4.BackColor = &H80000004 

x: 

End Sub 

 

Private Sub text3_keypress(KeyAscii As Integer) 

On Error GoTo x 

If KeyAscii = 13 Then 

    Text4.SetFocus 

End If 

 

x: 

End Sub 

 

Private Sub text4_keypress(KeyAscii As Integer) 

On Error GoTo x 

If KeyAscii = 13 Then 

    ok.SetFocus 

End If 

 

x: 

End Sub 

 

 

 

 

 

 

 

 

 

 

173 

 

c) Desain Form Nasabah 

 

Kode Program : 

Private Sub b() 

On Error GoTo x 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 390 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 13) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 360 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 12) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 330 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 11) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 300 Then 

174 

 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 10) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 270 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 9) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 240 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 8) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 210 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 7) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 180 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 6) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 150 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

175 

 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 5) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 120 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 4) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 90 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 3) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 60 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 2) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Else 

Data4.Recordset.MoveLast 

If Date - Data4.Recordset!tgl_trans >= 30 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = _ 

        ((((Data3.Recordset!bunga_pjm / 100) + 0.00000000023) * 

Data1.Recordset!saldo_pjm) * 1) + _ 

        Data1.Recordset!saldo_pjm 

        Data1.Recordset.Update 

Data8.Recordset.MoveLast 

Data6.Recordset.MoveLast 

If Date - Data8.Recordset!tgl_trans <= 30 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_pjm = Data6.Recordset!spjm 

        Data1.Recordset.Update 

End If 

End If 

176 

 

End If 

End If 

End If 

End If 

End If 

End If 

End If 

End If 

End If 

End If 

End If 

End If 

x: 

End Sub 

 

Private Sub a() 

On Error GoTo x 

Data2.Recordset.MoveLast 

If Date - Data2.Recordset!tgl_trans >= 390 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_spn = _ 

        ((((Data3.Recordset!bunga_spn / 100) + 0.00000000023) * 

Data1.Recordset!saldo_spn) * 13) + _ 

        Data1.Recordset!saldo_spn 

        Data1.Recordset.Update 

Else 

Data2.Recordset.MoveLast 

If Date - Data2.Recordset!tgl_trans >= 360 Then 

        Data1.Recordset.edit 

        Data1.Recordset!saldo_spn