Setijo Bismo
Departemen Teknik Kimia – FTUI
Oktober 2017
Bagian Satu
D ASAR -D ASAR P EMROGRAMAN DAN PENGGUNAAN G OAL S EEK
Bagi yang menggunakan MS-Excel tahun 2007 ke atas (2010, 2013, dan seterusnya), berikut ini
adalah garis besar langkah-langkah atau prosedur penggunaan Goal Seek:
Buat lembatang sebar atau lembar lajur (spreadsheet) di MS-Excel yang Anda memiliki,
Klik sel yang ingin Anda ubah...
Dari tab Data, pilih What if Analysis...
Pilih prosedur Goal Seek, akan muncul jendela seperti berikut:
Dalam jendela dialog Goal Seek seperti di atas, pilihlah sel (Set cell) yang akan diubah
nilainya (melalui prosedur Goal Seek) pada suatu nilai tertentu...
Nilai atau harga sel yang dimaksudkan sebagai perubahan seperti di atas, harus disebutkan
pada kotak “To value:” (misalnya: 0 atau nol)
Klik OK
Coba perhatikan lembatang sebar atau lembar lajur (spreadsheet) dalam MS-Excel seperti di
bawah ini:
Jika Anda diharuskan membuat spreadsheet seperti di atas, maka langkah yang harus diikuti dengan
seksama adalah:
1. Buatlah spreadsheet baru di MS-Excel Anda, sedapat mungkin harus sama seperti di atas!
2. Baris pertama dan kedua hanya diisi komentar-komentar atau catatan-catatan seperlunya,
3. Baris ketiga dan kelima dikosongkan atau blank,
Baris keempat diisi dengan f ( x) 0 3 x 3 2 e x x 4
2
4.
5. Baris keenam, tepatnya dalam sel B6 diisi dengan “ ”, sedangkan sel C6 diisi
dengan ”nilai tebakan” atau ”nilai awal” atau ”harga awal” yang dikehndaki,
6. Baris ketujuh, tepatnya dalam sel B7 diisi dengan pernyataan f ( x) , sedangkan sel
C7 merupakan formulasi MS-Excel untuk f ( x) 3 x 3 2 e x x 4 ,
2
Untuk mencari solusi PANLT dimaksudkan dalam MS-Excel tersebut, maka Anda harus
mengikuti langkah-langkah berikut:
1. Tempatkan atau klik tetikus (cursor) pada sel C6, isilah dengan nilai awal yang Anda
kehendaki (misalkan: 4), kemudian tekan Enter sehingga tetikus ada di sel C7,
2. Dengan tetikus berada dalam sel C7, panggillah atau munculkan perintah “Goal Seek”
dengan cara: masuk ke menu tab Data, kemudian pilih What if Analysis dan kemudian
Goal Seek, sehingga muncul jendela:
3. Ke dalam jendela Goal Seek di atas, isilah kolom “To value:” dengan nilai 0 (nol) dan
mengisi kolom “By changing cell:” dengan cara menempatkan tetikus pada sel C6,
sehingga kolom (sel) tersebut berisi $C$6
4. Tekan OK, sehingga hasilnya adalah:
Perhatikan juga lembatang sebar atau lembar lajur (spreadsheet) dalam MS-Excel yang telah
dibuat program “Goal Seek” seperti berikut ini:
Jika Anda isi “harga awal” dengan nilai 1 (satu) seperti di atas, dan kemudian menjalankan “Goal
Seek” dengan cara menempatkan tetikus pada sel/kolom C10 dan membuat sel C6 sebagai nilai
“yang harus berubah”, sebagai berikut:
Cobalah sekarang, jalankan “Goal Seek” dengan memberikan harga awal sebesar 4 (empat).
Telitilah hasilnya! Mengapa demikian?
Bagian Dua
D ASAR -D ASAR P ENGGUNAAN DAN PEMROGRAMAN PADA M ACRO VBA
Catatan:
Pernyataan Sub Pers_ABC() setara dengan Program Sub Pers_ABC dalam
FORTRAN 77 atau Pascal (Ezy Pascal),
Pernyataan Dim A, B, C, D As Double setara dengan Real*8 A, B, C, D dalam
FORTRAN 77 atau Var A, B, C, D: Extended (atau Double) dalam Pascal,
Pernyataan Range (“A3”).Select yang diikuti dengan A = ActiveCell.Value dapat diganti
dan disederhanakan menjadi: Cells(3,1)
Pernyataan Range (“A3”).Select yang diikuti dengan A = ActiveCell.Value adalah
perangkat atau instrumen INPUT dalam Bahasa VBA (Macro), yang setara dengan
READ(*,*) A dalam FORTRAN 77 atau Readln(A) dalam Pascal,
Pernyataan B^2 (dalam bagian proses) setara dengan B**2 dalam FORTRAN 77,
Pernyataan 4# (dalam bagian proses), mengindikasikan bahwa angka 4 adalah memiliki
jenis double precision,
Pernyataan Range (”C5”).Value adalah perangkat/instrumen OUTPUT dalam
Bahasa VBA (Macro), yang artinya adalah: mencetak nilai variabel X1 dalam sel C5.
Pernyataan Range (”C5”).Value = X1 dapat disederhanakan menjadi Cells(5,3) =
X1.
C. PROGRAM MACRO VBA UNTUK SOLUSI PANLT DENGAN METODE NEWTON-RAPHSON
Catatan:
1. Pernyataan-pernyataan INPUT di bawah ini:
Format lembatang sebar atau lembar lajur (spreadsheet) yang harus Anda buat untuk keperluan
ini adalah sebagai berikut:
iter = 0
flag = 0
Do While (flag = 0)
x = x1 - f(x1) * (x1 - x0) / (f(x1) - f(x0))
If Abs(x - x1) <= eps Then
flag = 1
ElseIf (iter > maxiter) Then
flag = 2
Else
iter = iter + 1
Range("J12").Select
ActiveCell.Value = iter
x0 = x1
x1 = x
End If
Loop
Range("J10").Select
ActiveCell.Value = x
Range("J11").Select
ActiveCell.Value = f(x)
End Sub
PENYEDERHANAAN PROGRAM
Listing dari program untuk komputasi dengan Metode Secant seperti di atas dapat dituliskan
kembali dengan menggunakan sintaks Bahasa VBA yang lebih sederhana, yaitu dengan
menggunakan fungsi Cells(row,col), seperti di bawah ini:
End Sub