terima kasih pak Anton, ilmu baru lagi untuk saya, [E3:F5] = [E2:F2].Formula
mungkin pak Anton & master yang lain bisa menjelaskan arti kurung siku di atas artinya apa ya? karena saya baru sekali ini menemukan solusi menggunakan kurung siku dalam VBA, kalo dalam formula biasanya merujuk kepada suatu alamat cell atau range dalam sebuah tabel. wassalam, -aji mumpung- Pada 24 Oktober 2012 10:45, summonery <[email protected]> menulis: > ** > > > ikutan juga ya,, sekedar memperpendek, > > Range("E2:F2").Copy Range("E3:F5").PasteSpecial (xlPasteFormulas) > > dapat diperpendek lagi menjadi: > > [E3:F5] = [E2:F2].Formula > > > >semoga bermanfaat > > > --- In [email protected], aji mumpung <pupung1986@...> wrote: > > > > ikutan lagi ya.. > > > > sekarang coba belajar memperpendek script yuk.. > > > > lihat kode yang ini: > > Range("E2:F2").*Select* > > *Selection*.Copy > > > > bisa disingkat menjadi: > > Range("E2:F2").Copy karena yang *dimerahin* bisa digabung dan > > > dihilangkan > > > > begitu juga yang ini: > > Range("E3:F5").*Select* > > *Selection*.PasteSpecial Paste:=xlPasteFormulas > > > > > bisa disingkat menjadi: > > Range("E3:F5").PasteSpecial Paste:=xlPasteFormulas > > > > jadi dari 4 baris kode dapat disingkat menjadi 2 baris saja: > > Range("E2:F2").Copy > > Range("E3:F5").PasteSpecial Paste:=xlPasteFormulas > > > > nah, dari 2 baris yang dikasih warna biru di atas, ternyata masih bisa > > disingkat lagi lho.. gak percaya? > > karena syntax untuk copy dalam vba adalah sbb: > > * > > > nama_workbook.nama_sheet.lokasi_cell_atau_range_yang_mau_dicopy.tindakannya_yaitu_copy > > > * [spasi] lokasi_tujuan.tindakannya_yaitu_paste_atau_paste_special > > > > perhatikan yang dimerahin adalah lokasi cell atau range awal yang mau > dicopy > > yang dikasih warna biru adalah lokasi cell atau range tujuan yang mau > > dipaste > > > > jadi yang warna *hijau* bisa disingkat menjadi: > > > Range("E2:F2").Copy Range("E3:F5").PasteSpecial (xlPasteFormulas) > > > > jadi ternyata dari 4 baris kode ini: > > Range("E2:F2").Select > > Selection.Copy > > Range("E3:F5").Select > > Selection.PasteSpecial Paste:=xlPasteFormulas > > > > bisa disingkat menjadi 1 baris: > > Range("E2:F2").Copy Range("E3:F5").PasteSpecial (xlPasteFormulas) > > > > semoga bermanfaat, > > > > wassalam, > > > > -aji mumpung- > > > > > > Pada 24 Oktober 2012 01:30, lkm jktind lkmjktind@... menulis: > > > > > > sudah bisa. > > > > > > terima kasih pak kid > > > > > > Sub rubah_formula() > > > > > > Cells(2, 6).Formula = "=Upper(RC[-4])" > > > Cells(2, 5).Formula = "=RC[-2]*rc[-1]" > > > Cells(2, 6).Name = "coba" > > > Cells(2, 5).Name = "coba1" > > > > > > > > > Range("E2:F2").Select > > > Selection.Copy > > > Range("E3:F5").Select > > > Selection.PasteSpecial Paste:=xlPasteFormulas > > > Range("I4").Select > > > Application.CutCopyMode = False > > > > > > Cells(2, 8).Value = Cells(2, 6) > > > Cells(2, 9).Value = Cells(2, 5) > > > > > > Cells(2, 11).Value = Evaluate("coba") > > > Cells(2, 12).Value = Evaluate("coba1") > > > > > > End Sub > > > > > > > > > 2012/10/23 Mr. Kid mr.nmkid@... > > > > > > > > ** > > > > > > > > > > > > Evaluate digunakan untuk mengubah suatu nama range menjadi sebuah > object > > > > atau menjadi suatu nilai. > > > > Jadi yang diubah adalah sebuah nama range. > > > > > > > > Contoh : > > > > 1. Evaluate("A1") artinya mengubah nama range A1 (tentu saja nama > range > > > A1 > > > > adalah cell A1), maka hasil evaluate adalah sebuah object range a1. > > > > > > > > Jadi, jika ada cell C7 akan diisi dengan nilai A1, bisa dengan : > > > > range("c7").value = evaluate("A1").value > > > > yang sering disingkat dengan : > > > > range("c7").value = evaluate("A1") > > > > karena properti default suatu range adalah value. > > > > > > > > 2. Evaluate("=A1") artinya mengubah nama range yang dirujuk dengan > > > formula > > > > (refers to berisi formula) yang berbunyi =A1 > > > > begitu juga ketika ada Evaluate("=suatu formula panjang"). > > > > > > > > Pada kasus : > > > > Cells(2, 11).Value = Evaluate(Cells(2, 5)) > > > > artinya : nilai di cell baris 2 kolom 11 [cells(2,11).value] akan > diisi > > > > dengan nilai hasil evaluate terhadap cell(2,5) dan diambil nilainya > > > > (default properti range adalah value. > > > > Jika cell(2,5) berisi tulisan atau angka berbunyi 125, berarti baris > : > > > > > > > > Cells(2, 11).Value = Evaluate(Cells(2, 5)) > > > > akan berarti : > > > > nilai di cell baris 2 kolom 11 [cells(2,11).value] akan diisi dengan > > > nilai > > > > hasil evaluate terhadap 125 dan diambil nilainya (default properti > range > > > > adalah value. > > > > Karena nama range 125 tidak bisa didefinisikan maka nilai dalam nama > > > range > > > > antah berantah itu akan menghasilkan error value. > > > > > > > > Jika baris Cells(2, 11).Value = Evaluate(Cells(2, 5)) maksudnya > adalah > > > > mengambil nilai di cells(2,5), maka : > > > > Cells(2, 11).Value = Evaluate("=" & Cells(2, 5).value) > > > > atau > > > > Cells(2, 11).Value = Cells(2, 5).value > > > > > > > > Wassalam, > > > > Kid. > > > > > > > > > > > > > > > > ------------------------------------ > > > > > > --------------------------------------------------------------------- > > > bergabung ke milis (subscribe), kirim mail kosong ke: > > > [email protected] > > > > > > posting ke milis, kirimkan ke: > > > [email protected] > > > > > > berkunjung ke web milis > > > http://tech.groups.yahoo.com/group/belajar-excel/messages > > > > > > melihat file archive / mendownload lampiran > > > http://www.mail-archive.com/[email protected]/ > > > atau (sejak 25-Apr-2011) bisa juga di : > > > http://milis-belajar-excel.1048464.n5.nabble.com/ > > > > > > menghubungi moderators & owners: [email protected] > > > > > > keluar dari membership milis (UnSubscribe): > > > kirim mail kosong ke [email protected] > > > > ---------------------------------------------------------------------Yahoo! > > > Groups Links > > > > > > > > > > > > > > > > >

