Anda di halaman 1dari 22

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/282122073

Komputasi Numerik TK-2015 (Materi Kuliah #4): Lebih Jauh dengan


Pemrograman VBA dan atau MS-EXEL sebagai Alat Komputasi Numerik

Chapter · September 2015


DOI: 10.13140/RG.2.1.3757.6405

CITATIONS READS

0 18,317

1 author:

Setijo Bismo
University of Indonesia
174 PUBLICATIONS   125 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Natural Rubber and Material Construction in Chemical Engineering View project

Basic Course on Linear Algebraic for Engineers View project

All content following this page was uploaded by Setijo Bismo on 24 September 2015.

The user has requested enhancement of the downloaded file.


Materi Kuliah

ENCH800001 - PEMODELAN TEKNIK KIMIA LANJUT


(S2)

Periode: Minggu ke-4

DEPARTEMEN TEKNIK KIMIA


FAKULTAS TEKNIK UNIVERSITAS INDONESIA
September 2015
DASAR-DASAR PEMROGRAMAN
DASAR-DASAR
MS-EXCEL dan VBA Macro
MS-EXCEL

Setijo Bismo - Departemen Teknik Kimia FTUI - September 2015


PENGENALAN AWAL:
Cara Membuka Editor Macro (“VBA”)
(#1)

 Ingat: + , dapat dipakai untuk:

 Run Macro
 Edit Macro
 Delete Macro
 Options Macro

 Ingat: + , dapat digunakan untuk:

 Open Macro Editor


 Edit a Macro (VBA)
Mari Membuat Program Macros Sederhana:
Persamaan ABC dalam VBA/Macro
(#2)

 Pertama kali, buka file woorkbook “BARU” seperti dalam


format berikut:

 Tekan tombol Alt+F8 untuk "Create Macro"


 Beri nama modul Macro yang diinginkan (misal: Pers_ABC)
Mari Membuat Program Macros Sederhana:
Persamaan ABC dalam VBA/Macro
(#2)

 Setelah jendela "Macro Editor" muncul, maka di dalamnya ketiklah sbb:


Sub Pers_ABC() 'PROSES HITUNGAN:
Dim A, B, C, D As Double '----------------
Dim X1, X2 As Double D = B ^ 2 - 4# * A * C
X1 = (-B + Sqr(D)) / 2 / A
' Program Persamaan ABC X2 = (-B - Sqr(D)) / 2 / A
' untuk mencari akar dari
' Persamaan Kuadrat: 'KELUARAN atau HASIL:
' y(x) = A x^2 + b x + c '--------------------
Range("C5").Value = X1
'INPUT: parameter A, B, dan C Range("C6").Value = X2
'---------------------------- Range("C7").Select
Range("A3").Select
A = ActiveCell.Value End Sub
Range("B3").Select
B = ActiveCell.Value
Range("C3").Select
C = ActiveCell.Value
Mari Membuat Program Macros Sederhana:
Persamaan ABC dalam VBA/Macro
(#3)
 Setelah pengetikan selesai, rekam workbook baru tersebut (Save As) yang
mengandung Macro dalam format *.xlsm"
 Kembali ke ”Jendela Workbook”, kemudian isilah variabel-variabel A, B, dan C
dalam sel-sel A3, B3, dan C3
 Jalankan (Run) Macro menggunakan Alt+F8
 Perhatikan secara seksama, apa yang ditampilkan pada sel-sel C5 dan C6
 Hasilnya adalah sebagi berikut:
Mari Membuat Program Macros Sederhana:
Persamaan ABC dalam VBA/Macro
(#4)
Bagaimana jika ingin menambahkan ”Tombol Radio” agar supaya PRAKTIS dan CEPAT?

 Arahkan cursor ke Controls group dalam Developer tab. (berlaku untuk Excel
2007 dan Excel 2010)
 Klik tombol Insert, dan pilih Tombol Option (bulat atau kotak?), perhatikan jendela
berikut:
Sebelum Membuat Program Macros di Excel:
Menampilkan “DEVELOPER tab” di MS-Excel 2007
(#1)
Sebelum Membuat Program Macros di Excel:
Menampilkan “DEVELOPER tab” di MS-Excel 2007
(#2)
Sebelum Membuat Program Macros di Excel:
Menampilkan “DEVELOPER tab” di MS-Excel 2010
(#3)
Sebelum Membuat Program Macros di Excel:
Menampilkan “DEVELOPER tab” di MS-Excel 2010
(#4)
Sebelum Membuat Program Macros di Excel:
Menampilkan “DEVELOPER tab” di MS-Excel 2013
(#5)
Mari Belajar Penggunaan Praktis “Tombol Kunci: [Ctrl-Shif + ENTER]:

Solusi SPAL (Sistem Persamaan Aljabar Linier) – 3 Persamaan


(#1)

 Diinginkan mencari solusi SPAL berikut ini:


3x1  x2  2 x3  9 3 1 2  x1  9
    
2 x1  3x2  3x3  9  2 3 3 x
   
2  9
5 x1  2 x2  2 x3  9 5 2 2 x3  9

Maka, format “Worksheet” yang diharapkan dapat dibuat


dalam MS-EXCEL adalah sebagai berikut:

 A  x̂   b 
Mari Belajar Penggunaan Praktis “Tombol Kunci: [Ctrl-Shif + ENTER]:

Solusi SPAL (Sistem Persamaan Aljabar Linier) – 3 Persamaan


(#2)

 Pertama kali, buat woorksheet “berbentuk SPAL” seperti


dalam format berikut:

 Elemen matriks [A] menempati posisi: A2 sampai C4


 Elemen vektor [ b ] berada di G2 sampai G4
 Elemen vektor JAWAB (= xi ), pada E2 sampai E4
Mari Belajar Penggunaan Praktis “Tombol Kunci: [Ctrl-Shif + ENTER]:
Solusi SPAL (Sistem Persamaan Aljabar Linier) – 3 Persamaan
(#3)

 Maka cara mencari “solusi” dari SPAL di atas adalah sbb:

 Pilih (hitamkan atau blok) sel-sel E2 sampai E4


 Ketik, pada baris :
 Kemudian “tekan [Ctrl]” dengan ”Ibu jari tangan KIRI”, diikuti dengan
“tekan [Shift]” dengan ”telunjuk tangan KIRI”, dan tekan [ENTER]
dengan ”telunjuk tangan KANAN”...
Mari Belajar Penggunaan Praktis “Tombol Kunci: [Ctrl-Shif + ENTER]:
Solusi SPAL (Sistem Persamaan Aljabar Linier) – 3 Persamaan
(#4)

 Maka hasilnya adalah sebagai berikut:


Latihan:
Cobalah cari solusi dari SPAL berikut ini!
Penggunaan “VBA” (Macro) untuk Metode Newton-Raphson
(#1)

 Coba buat dan perhatikan worksheet berikut ini:


Penggunaan “VBA” (Macro) untuk Metode Newton-Raphson
(#2)

 Pelajarilah SINTAKS VBA (Visual Basic) berikut ini:

Sub NewRaph() Do While (flag = 0)


Dim eps, x, xold As Double x = x - f(x) / df(x)
Dim flag, iter, maxiter As Integer If Abs(x - xold) <= eps Then
' flag = 1
' NewRaph Macro ElseIf (iter > maxiter) Then
' Macro recorded 25/12/2014 by flag = 2
Setijo Bismo Else
' iter = iter + 1
Range("J5").Select xold = x
xold = ActiveCell.Value End If
Range("J6").Select Loop
maxiter = ActiveCell.Value '
Range("J9").Select Range("J10").Value = x
eps = ActiveCell.Value Range("J11").Value = iter
End Sub
iter = 0
flag = 0
x = xold
Penggunaan “VBA” (Macro) untuk Metode Newton-Raphson
(#2)

 Pelajarilah SINTAKS VBA (Visual Basic) berikut ini:


Sub NewRaph() Judul Sub-program Do While (flag = 0)
Deklarasi Dim eps, x, xold As Double x = x - f(x) / df(x)
Variabel Dim flag, iter, maxiter As Integer If Abs(x - xold) <= eps Then
' flag = 1
Komentar ' NewRaph Macro ElseIf (iter > maxiter) Then
' Macro recorded 25/12/2014 by flag = 2 Badan/Isi
PROGRAM
Setijo Bismo Else
' iter = iter + 1
Pengisian Range("J5").Select xold = x
SEL MS-Excel
xold = ActiveCell.Value End If
Range("J6").Select Loop
maxiter = ActiveCell.Value '
Range("J9").Select Range("J10").Value = x Pengisian
eps = ActiveCell.Value Range("J11").Value = iter SEL MS-Excel
End Sub
iter = 0
flag = 0 Badan/Isi PROGRAM
x = xold
View publication stats

Anda mungkin juga menyukai