Anda di halaman 1dari 20

Komputer II

Visual Basic for Application


Selasa, February 11, 2014
Perintah perintah untuk mengakses Workbook

• ThisWorkbook. Save
Perintah untuk menyimpan buku kerja yang sedang dipakai.
• ThisWorkbook.Saved = True
ThisWorkbook.Close
adalah Perintah untuk menutup buku kerja di mana prosedur
VBA (makro) berjalan sekligus menyimpan file
• ThisWorkbook.Activate
Windows("theOtherWorkbookName.xlsm").activate
Ketika Anda bekerja dengan dua buku kerja dan Anda akan
berpindah dari satu ke yang lainnya dapat menuliskan kode
perintah:
Perintah perintah untuk mengakses
WoorkSheet
Worksheet(index) atau Sheets (indeks) atau
Sheets (“sheet name”)
• Sheets(1).activate atau Sheets(1).select atau Worksheets(1).select
atau Worksheets(“Sheet 1”).select berarti perintah mengaktifkan
sheet 1
• Sheets(1).name =Data atau Sheets(“Sheet1”). name= “Data”
berariti perintah untuk menamai sheet 1 denan nama Data.
Pemberian nama sheet tidak dibenarkan memakai karakter khusus
seperti spasi ? [ ] * / \ ! @ # $ % ^ ~ juga tidak boleh lebih dari 31
karakter.
• Sheets(“Data”).visible=False berarti perintah menyembunyikan
lembar kerja/sheet yang bernama sheet “Data”
• Sheets(“Data”).visible=True berarti perintah menampilkan kembali
sheet “Data” yang telah disembunyikan
Perintah perintah untuk mengakses Row

Rows(indeks) atau Rows(“nama baris”)


• Rows(1).select atau Rows(“1”).select berarti
perintah untuk memilih baris ke satu
• Rows(1:5).select atau Rows(“1:5”).select berarti
perintah untuk memilih baris ke-1 sampai baris
ke-5
• Rows.RowHeight=20 perintah menentukan tinggi
semua baris dalam satu sheet aktif adalah 20
point
• Rows.Autofit perintah menentukan tinggi semua
baris mengikuti atau tergantung isi sel
Perintah perintah untuk mengakses Column

Columns(indeks) atau Columns(“nama kolom”)


• Columns(1).select atau Columns(“1”).select
berarti perintah untuk memilih kolom ke satu
• Columns (1:5).select atau Rows(“1:5”).select
berarti perintah untuk memilih kolom ke-1
sampai kolom ke-5
• Columns.Autofit perintah menentukan lebar
semua kolom mengikuti atau tergantung isi
sel.
Perintah perintah untuk mengakses Range

ekspresi.Range(Cell1, Cell2) atau Range(“cell name”)

• Range("A1").Select Untuk memilih satu sel Anda akan diisi


atau dimaipulasi pada contoh ini adalh sel A1
• Range ( "A1: G5").Select Untuk memilih satu set susunan
sel , yaitu: dari sel A1 sampai dengan sel G5 dengam
menggunakan tanda (:)
• Range ( "A1, A5, B4").Select Untuk memilih satu set non
sel bersebelahan , yaitu: memilih sel A1, A5 dan B4 dengan
menggunakan tanda koma sebagai pemisah.
• Range ( "A1, A5, B4: B8").Select kode untuk memilih satu
set non sel bersebelahan dan range yang akan Anda
gunakan
Perintah perintah untuk mengakses Cells

Cells (baris, Kolom)


• Cells(1,1).Select sama seperti Range("A1").Select
berarti memilih sel A1 sedangkan
Cells(11,27). Select sama dengan perintah
Range("AE11").Select.
• Cells.Select perintah untuk memblok atau
memilih atau sheet aktif
• Cells.ClearContents perintah untuk memilih
semua sel dan kemudian untuk mengosongkan
semua isi/nilai sel atau formula yang ada
Offset
Offset (jumlah_baris , jumlah_kolom)
The Offset properti adalah salah satu yang akan sering kita gunakan berhubugnan
dengan Range untuk bergerak di sekitar lembar kerja
• Range("B2").Offset (1,0). Select adalah perintah untuk berpindah satu sel ke
bawah, yaitu: dari B2 ke B3 adalah
• Range("B2"). Offset (0,1). Select adalah perintah untuk berpindah satu sel ke
kanan, yaitu: dari B2 ke C2 Range
• Range ( "B2"). Offset (-1,0). Select adalah perintah untuk berpindah satu sel
ke atas, yaitu: dari B2 ke B1
• Range ( "B2"). Offset (0, -1). Select adalah perintah untuk berpindah satu sel
ke kiri, , yaitu: dari B2 ke A2
• ActiveCell.Offset (1,0). Select adalah perintah untuk berpindah satu sel ke
bawah dari sel yang terpilih, misalnya: untuk pindah dari A1 ke E6 diakukan
dengan perintah:
Range ( "A1"). Offset (5,6). Select
• Range (ActiveCell, ActiveCell.Offset (0,4)). Copy adalah perintah untuk
memilih 4 sel ke sebelah kanan untuk disalin atau disisipkan di tempat lain.
Bagaimana supaya bisa interaktif?
1. Menggunakan InputBox dan MessageBox !!!
• Caranya?
InputBox merupakan kotak interaktif yang dapat menampung inputan dari pengguna
dan dimasukkan ke delam sebuah variable. Adapun sintak dari inputbox adalah:
expression.InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextID, Type)

kotak pesan (MsgBox) adalah alat utama untuk berinteraksi dengan pengguna. Anda
dapat menggunakannya untuk menginformasikan, peringatan atau meminta
pengguna mislanlnya dengan kotak pesan Yes atau No jika dia yakin bahwa dia ingin
menjalankan atau membatalkan prosedur tertentu seperti printah untuk
menjalankan perintah menghapus.
Sintaks pembuatan kotak pesah adalah:
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
Tipe data
• Suatu data yang dipakai pada makro memiliki
tipe tersendiri. Di dalam VBA banyak tipe data
yang dapat dipakai dalam suatu variabel atau
fungsi. Penentuan tipe data semestinya
disesuaikan dengan kebutuhan pengguna
Storage
Data type Range
size
Byte 1 byte 0 to 255
Boolean 2 bytes True or False
Integer 2 bytes -32,768 to 32,767
Long (long integer) 4 bytes -2,147,483,648 to 2,147,483,647
Single(single-precision 4 bytes -3.402823E38 to -1.401298E-45 for negative values; 1.401298E-
floating-point) 45 to 3.402823E38 for positive values
Double (double- 8 bytes -1.79769313486231E308 to
precision floating- -4.94065645841247E-324 for negative values;
point) 4.94065645841247E-324 to 1.79769313486232E308 for
positive values
Currency 8 bytes -922,337,203,685,477.5808 to 922,337,203,685,477.5807
(scaled integer)
Decimal 14 bytes +/-79,228,162,514,264,337,593,543,950,335 with no decimal
point;
+/-7.9228162514264337593543950335 with 28 places to the
right of the decimal; smallest non-zero number is
+/-0.0000000000000000000000000001
Date 8 bytes January 1, 100 to December 31, 9999
Object 4 bytes Any Object reference
String 10 bytes 0 to approximately 2 billion
(variable-length) + string
length
String Length of 1 to approximately 65,400
(fixed-length) string
Variant 16 bytes Any numeric value up to the range of a Double
(with numbers)
Variant 22 bytes Same range as for variable-length String
(with characters) + string
length
User-defined Number The range of each element is the same as the range of
(using Type) required its data type.
by
elements
Jika tipe data yang dideklarsikan tidak sama dengan tipe data masukan atau yang
digunanakan maka program makro akan mengalami error type miss match. Dan jika
data masukan melebihi jangkauan tipe data yang dideklarasikan maka program akan
mengalami error out of range.
Konstanta (tetapan)
• Konstanta atau literal adalah sesuatu yang
bernilai tetap. Pada pemakaian konstanta yang
bersifat umum (public) artinya bisa dipakai
oleh porsedur atau fungsi mana pun atau
pemakaan konstanta yang khusus (private),
terlebih dahulu harus dideklarasikan dengan
sintaks:
Public | Private] Const constname [As type] =
expression
Public | Private] Const constname [As
type] = expression
• Public perintah agar konstanta tersebut dapat dipakai di
semua sub atau fungsi
• Private perintah agar konstanta ini hanya dipakai di pada
sub atau fungsi dimana konstanta tersebut dideklarasikan
• Const adalah kata cadangan deklarasi konstanta.
• Constname adalah nama konstanta yang akan dipakai
• Expression adalah ungkapan atau nilai dari konstanta.
• Contoh:
Const g=10
Const Keterangan=”Diabaikan”
Const Benar= True, Salah=False
Variable
• Variable atau peubah adalah sesuatu yang mempunyai
nilai yang dapat berubah-ubah. Penggunaan variabel
pada program bertujuan unuk menyimpan data yang
sewaktu-waktu dapat diubah nilainya.
• Jumlah variabel yang dapat digunakan pada suatu
program tidak terbatas. Namun masing-masing
variabel haruslah bersifat unik, aritinya tidak boleh ada
nama variabel yang sama. Pendeklarasian variabel
dalam VBA memiliki sintaks sebgai berikut:
Dim [WithEvents] varname[([subscripts])] [As [New] type]
[, [WithEvents] varname[([subscripts])] [As [New] type]]
Dim [WithEvents] varname[([subscripts])] [As [New]
type] [, [WithEvents] varname[([subscripts])] [As [New]
type]]
Bagian Keterangan
WithEvents Bersifat opsi . Merupakan keyword untuk variabel khusus untuk variabel
objek. Withevent hanya berlaku pada class module

varname Bersifat wajib. Merupakan nama variabel yang digunakan.

subscripts Bersifat opsi. Merupakan dimensi dari suatu variabel array


[lower To] upper [, [lower To] upper] . . .
New Bersifat Opsi.merupakan keyword yang membolehkan pembuatan suatu
objek untuk varaiabel yang bertipe
type Bersifat opsi. Tipe deta dapat berupa Byte, Boolean, Integer, Long,
Currency, Single, Double, Decimal, Date, String, Object, Variant, a user-
defined type, atau sebuah object type. Gunakan tanda koma untuk
memeisahkan variabel dan tipedeatanya dari variabel yand
dideklarasikan.
Operator
• Operator adalah simbol atau kata yang digunakan
dalam program utuk melakukan suatu operasi, seperti
jumlah, selisih, perkalian, pembagian, pemberian nilai
pada suatu variabel atau ekspresi.
• Pada saat beberapa operasi digunakan dalam suatu
ekspresi, masing masing bagian dievaluasi dengan
mengutamakan atau mendahulukan operasi mana
yang dilakukan sesuai tingkatannya atau precedence.
• Ada tiga jenis operator, yaitu operator aritmatika,
operator pembanding dan operator logika. Tabel
berikut ini menampilkan tiga jenis operator
berdasarkan tingkatannya (precedence)
Precedence operator
Operator Aritmatika Operator Pembandig Operator Logika
pangkat (^) Sama dengan (=) Not
Negasi (–) Tidak samadengan (<>) And
Perkalian dan pembagian (*, /) Lebih kecil(<) Or
Pembagi nilai integer (\) Lebih besar (>) Xor
Modulus (Mod) Lebih kecil sama dengan (<=) Eqv
Penjumlaha dan selisih (+, –) Lebih besar sama dengan (>=) Imp
Penanbahan string (&) Seperti Like
adalah Is
Sub Jumlah()
Dim A As Byte, B As Byte, C As Byte
A = InputBox("Iput Nilai A ") ', "Input Data1")
B = InputBox("input Nilai B ", "Input Datya2")
C=A+B
MsgBox "Nilai A dan B jumlahnya adalah " & C, , "Hasil"
MsgBox "Jumlah A= " & A & " dan B= " & B & " adalah " & C, , "Hasil"
Cells(1, 1) = A: Cells(1, 2) = "+"
Cells(1, 3) = B: Cells(1, 4) = "="
Cells(1, 5) = C
Cells(2, 1) = A & " + " & B & " = " & C
End Sub
Latihan
Sub Operator() For a = 1 To 10
On Error Resume Next Cells(a + 1, 1) = a
Sheets(2).Activate Cells(a + 1, 2) = b
Dim a As Byte, b As Byte Cells(a + 1, 3) = a + b
Range("A1").Value = "Nilai A": Cells(a + 1, 4) = a - b
Range("B1").Value = "Nilai B" Cells(a + 1, 5) = a * b
Range("C1").Value = "Nilai A+B": Cells(a + 1, 6) = a / b
Range("D1").Value = "Nilai A-B" Cells(a + 1, 7) = a ^ b
Range("E1").Value = "Nilai A*B": b=b+1
Range("F1").Value = "Nilai A/B" Next a
Range("G1").Value = "Nilai A^B" End Sub
Tugas!!!
1. Jelaskan/beri keterangan tiap baris untuk program latihan di atas
2. Buat makro untuk menyelesaikan persoalan fisika sperti persamaan :
massa jenis, GLB, GLBB, Gaya, Momentum

Anda mungkin juga menyukai