materi 5 conditional

11
DECISIONMAKING PENGAMBILAN KEPUTUSAN Pertemuan 5 Komputer II VBA for Excel 2007 atau 2010 Asli Frilantika , March 11, 2012

Upload: aslilantika

Post on 24-Jun-2015

473 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Materi 5 conditional

DECISIONMAKING PENGAMBILAN KEPUTUSAN

Pertemuan 5Komputer II VBA for Excel 2007 atau 2010

Asli Frilantika , March 11, 2012

Page 2: Materi 5 conditional

PENGAMBILAN KEPUTUSAN

Seringkali kita dihadapkan pada masalah untuk mengambil keputusan terhadap dua alternatif atau bahkan lebih. Kita bisa mengambil keputusan oleh sutu kondisi yang kita evaluasi terlebih dahulu. Hal serupa juga dilakukan oleh komputer. Untuk keperluan ini VBA menyediakan dua macam pernyataan, yaitu:

1. IF -THEN

2. SELECT CASE

Page 3: Materi 5 conditional

IF…THEN DAN IF …THEN …ELSEIf … then adalah suatu perintah penyeleksian yang akan dilakukan bila memenuhi kondisi, dengan beberapa syntax sebagai berikut:Untuk 1 kondisi 1 pernyataanIf <condition> then [statement]Contoh:If A > 10 Then A = A + 1

Untuk 1 kondisi tapi beberapa pernyataan dapat ditulis dalam 1 baris di pisah dengan colon (:)

If <condition> then [statement_1]: [Satatement_2]: [Statement_3]:[statement_n]AtauIf <condition> then [Statement_1][Statement_2][Statement_3][Statement_n]EndIf

Contoh:If A > 10 Then A = A + 1 : B = B + A : C = C + B

Page 4: Materi 5 conditional

Untuk 1 kondisi dan 2 pernyataan

If <kondisi> then [pernyataan1]

Else[pernyataan2]

End If

Contoh:If A > 10 Then

B = B + 1 Else

B = B - 1End If

Untuk bebrapa kondisi dan beberapa pernyataanIf <kondisi1> then [Pernyataan1]

ElseIf <kondisi2> then[pernyataan2]

……ElseIf <kondisike-n> then [pernyataan ke-n ]

Else [pernyataan ke n+1]

End If

Contoh:

IF NA>=80 then

Hrf=“Lulus Amat baik ”

ElseIF NA>=70 then

Hrf=“Lulus baik ”

ElseIF NA>=60 then

Hrf=“Lulus Cukup”

ElseIF NA>=50 then

Hrf=“Lulus Kurang

Else

Hrf=“Tidak Lulus”

End IF

Page 5: Materi 5 conditional

CONTOH IF THEN BANYAK KONDISI PADA VBA

Sub IfBanyakKondisi()Worksheets(1).ActivateCells.ClearContentsDim x As ByteCells(1, 1).Value = "Angka"Cells(1, 2).Value = "Huruf“For x = 1 To 5

Cells(1 + x, 1).Value = xIf x = 1 ThenCells(x + 1, 2) = "Satu"

ElseIf x = 2 ThenCells(x + 1, 2) = "Dua"

ElseIf x = 3 ThenCells(x + 1, 2) = "Tiga"

ElseIf x = 4 ThenCells(x + 1, 2) = "Empat"

ElseCells(x + 1, 2) = "Lima"

End IfNext x

End Sub

Page 6: Materi 5 conditional

BUATLAH TAMPILAN DI EXCEL NAMA HARI DALAM SEMINGGU DAN NAMA BULAN DALAM SETAHUNGUNAKAN PENGULANAN DAN KONDISIONAL IF-THEN

Bulan ke Nama Bulan

1 Januari

2 Pebruari

3 Maret

4 April

5 Mei

6 Juni

7 Juli

8 Agustus

9 September

10 Oktober

11 Nopember

12 Desember

Hari ke Nama Hari

1 Ahad

2 Senin

3 Selasa

4 Rabu

5 Kamis

6 Jum’at

7 Sabtu

Page 7: Materi 5 conditional

SELECT CASE… Menyeleleksi satu dari beberapa pernyataan yang bergantung pada suatu ekpresi

Syntax

Select Case testexpression[Case expressionlist-n[statements-n]] ...[Case Else[elsestatements]]

End Select

Select Case Kinerja Case 1

Bonus = Gaji* 0.1 Case 2

Bonus = Gaji* 0.2 Case 3

Bonus = Gaji* 0.3 Case 4

Bonus = Gaji* 0.5Case Is > 4

Bonus = Gaji* 1 Case Else

Bonus = 0 End Select

Page 8: Materi 5 conditional

Sub LatSelectCase() Worksheets(1).Activate Dim A As Byte For A = 1 To 10 Cells(1 + A, 1).Value = A Select Case A Case 1 Cells(1 + A, 2).Value = "Satu" Case 2 Cells(1 + A, 2).Value = "Dua" Case 3 Cells(1 + A, 2).Value = "Tiga" Case 4

Cells(1 + A, 2).Value = "Empat"

Case 5 Cells(1 + A, 2).Value = "Lima" Case 6 Cells(1 + A, 2).Value = "Enam" Case 7 Cells(1 + A, 2).Value = "Tujuh" Case 8 Cells(1 + A, 2).Value = "Delapan" Case 9 Cells(1 + A, 2).Value = "Sembilan" Case 10 Cells(1 + A, 2).Value = "Sepuluh" End Select Next AEnd Sub

CONTOH PENGGUNAN SELECT CASE PADA VBA

Page 9: Materi 5 conditional

Sub Pesan2()Dim Msg, Style, Title, Help, Ctxt, Response, MyStringMsg = "Mau melanjutkan?" ' mendefinisikan pesan.Style = vbYesNo + vbCritical + vbDefaultButton2 ' mendefinisikan tombol.Title = " Demonstarsi MsgBox " ' mendefinisikan Judul Pesan (Title).Help = "DEMO.HLP" ' Define Help file.Ctxt = 1000 'Definisi Topik"Response = MsgBox(Msg, Style, Title, Help, Ctxt) 'penampilan pesanIf Response = vbYes Then ' pengguna memilih tombol Yes. MyString = "Yes" ' melakukan beberapa aksi. Call pesan1 ' melakukan pemanggilan sub/prosedut pesan1Else ' pengguna memilih tombol No. MyString = "No" ' melakukan beberapa aksiEnd If

End Sub

Page 10: Materi 5 conditional

TUGAS LATIHAN 5

Ubahlah Progeram kondisional If Then pada program sebelumnya dengan menggunakan Select Case

Buatlah program untuk mengkonversi suhu dengan Pilihan F,R,KGunakan pengulangan, kondisional dan msgbox dan input box

Page 11: Materi 5 conditional

Sub NamaRange1()ActiveWorkbook.Names.Add Name:="Tabel1",_ RefersToR1C1:="=Sheet1!R1C1:R11C2" Range("Tabel1").Select With Selection

.Font.Bold = True .Font.ColorIndex = 7 .HorizontalAlignment = xlCenter .Borders.LineStyle = xlContinuous .Interior.ColorIndex = 10

End WithCells(1, 1).ActivateEnd Sub