sudah coba yang ini belum ?
Sheets("Jurnal").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select

angka 1 dan nol itu coba diubah2.... dan perhatikn apa yg terjadi
( itu dulu jg dptnya dari milis ini )


kbz



Pada Rabu, 30 Oktober 2013 3:34, "ones_marle_...@yahoo.com" 
<ones_marle_...@yahoo.com> menulis:

 
Waduh, si om kid ini sangat teliti banget ya..
Akhirnya saya melakukan perombakan kembali dari sebuah module dan procedure 
saat pengkalkulasian terjadi. Dan bener banget om, saat testing dengan 2 user 
dengan 2 aktifitas yang berbeda, beda banget rasanya bila now() di gantikan 
dengan today() (walaupun sifatnya volatile) tp membuat enak jln macronya.

Mudah"an saat sudah jadi sempurna, pengen sharing"aja sm smua exceller disini. 
sbnernya buat apa si fungsi script saya selama ini.. hehehe (sedikit mau 
sharing hasil karya saya) => Insya Allah ya...

Kalau dari jwban pertanyaan saya, sdh terjawab dr si Miss Jan Raisin.. ternyata 
lupa klo ada fungsi looping, kenapa ga digunakan.

Om kid, mau tanya lagi...
saat vlookup menggunakan VBA, saya lebih sering menggunakan script
"worksheetfunction.vlookup(arg1,arg2, arg3, [arg4])"

apakah script ini sangat efisien dalam penggunaan? (karena cm ini saja yang 
menurut saya lebih enak dipakai, karena langsung menuju pada inputan yang 
diinput dan lgsg menuju ke data mana yang akan diambil)

Apabila ada fungsi vlookup yang lebih efisien diatas, mohon sharing"ya om kid.. 
:) 


---In belajar-excel@yahoogroups.com, <belajar-excel@yahoogroups.com> wrote:


ow thread ini sudah panjang...

baru lihat kalo ada reply-nya... sorry ya..

1. apakah tidak akan membuat size penyimpanan excel menjadi membengkak?
>> tentu akan membuat penyimpanannya semakin besar tapi gak bengkak.
>
>2. Karena data yang sudah terecord saat ini sudah sekitar 1000 something..

>> kalau masih kisaran seratus ribu sih gak terlalu banyak ya.

3. Jadi saya bermaksud membuatkan rumus tersebut menjadi copy paste value pada 
kolom tersebut.
>> formula yang Anda gunakan :
>=IF(DAY(F2)<DAY(NOW()),DATE(YEAR(NOW()),MONTH(NOW()),DAY(F2)),DATE(YEAR(NOW()),MONTH(NOW())-1,DAY(F2)))


pertanyaannya adalah :

1. disana ada fungsi Now() yang bersifat volatile. Jika formula ini 
di-values-ken, berarti setiap akan autofilter harus klik sesuatu untuk update 
nilai dalam rumus. Gitu gak ?


2. Atau nilai hasil formula itu harus tetap selamanya segitu aja ?

misal data masuk hari ini 2013-10-25, apakah 300 hari kedepan, nilai di cell 
itu harus tetap 2013-10-25 alias sama dengan hasil formula saat memasukkan 
record tersebut dulu ?


Jika jawaban 1 adalah Ya, berarti nilai dalam cell tersebut akan bergerak maju 
terus menerus mengikuti waktu manusia. Jawaban 2 tidak akan bisa dijawab dengan 
Ya.


Jika jawaban 2 adalah Ya (jawaban 1 harus tidak), berarti nilai dalam cell 
tidak bisa menggunakan formula dan lebih baik diolah saat record masuk saja.



4. Dan sebenarnya proses perhitungan tanggal ini akan berjalan setiap harinya, 
karena untuk proses AutoFilter saat user(kita) mengklik tombol untuk 
AutoFilternya.

>> si user ketika autofilter harus pada nilai hasil formula terbaru atau pada 
>> hasil formula saat si record data masuk ke tabel ?

jika user saat autofilter membutuhkan nilai hasil formula :

a. terbaru, maka formula yang dibutuhkan.
     >> Jika dengan VBA, maka sebelum proses user autofilter harus ada prosedur 
pembaruan nilai hasil formula yang dijalankan. Kalau tidak dilakukan, berarti 
ada kemungkinan user memfilter data yang tidak update nilai tanggalnya, misal 
saja beberapa hari tidak ada data yang masuk, maka nilai hasil formula tidak 
terupdate


b. nilai saat record data masuk ke tabel, maka yang dibutuhkan adalah VBA untuk 
membentuk nilai tanggal hasil formula dan menuliskannya ke cell tempat record 
baru.



5. formulanya bisa disederhanakan menjadi :
=Date(  Year( Now() )  ,  Month( Now() )  -  (  Day(F2)<Day( Now() )  ) ,  
Day(F2))   )


Penggunaan fungsi Now() dalam formula tersebut kurang membuat sreg...

kenapa ?

karena tingkat ketelitian yang dibutuhkan hanya per hari alias jika hari 
berubah maka perlu kalkulasi baru, dan ndak perlu sampai per detik.

Jadi, lebih pas kalau pakai Today() daripada Now()


Formulanya akan menjadi :
=Date(  Year( Today() )  ,  Month( Today() )  -  (  Day(F2)<Day( Today() )  ) , 
 Day(F2))   )


Apa bedanya ?

>> dengan formula Now() (ingat... sifatnya volatile) maka setiap ada perubahan 
>> akan membuat si fungsi Now() dikalkulasi.

      karena fungsi Now() memiliki ketelitian sampai level detik, maka besar 
kemungkinan saat ada yang entry data di sheet nun jauh dimato sana, terjadi 
pada detik yang berbeda dengan yang lagi disimpan oleh si Now()

     hasilnya, si Now() mengalami perubahan nilai. Akibatnya lagi, semua 
formula yang pakai fungsi Now() harus dikalkulasi, ndak peduli apakah 
berhubungan dengan data yang di entry atau tidak sama sekali....  pokoke 
kalkulasi semua formula yang pakai Now().

>> dengan formula Today() (ingat.... sifatnya juga volatile) yang tingkat 
>> ketelitiannya hanya sampai hari, maka pasti hasil Today() berubah kalau 
>> sudah berganti hari komputer. Artinya, dihari yang sama, pada detik menit 
>> atau jam beda yang belum membuat ganti hari, jika ada yang entry di sheet 
>> antah berantah, tidak akan membuat nilai yang lagi disimpan Today() 
>> mengalami perubahan, sehingga semua formula yang pakai Today() tidak perlu 
>> di kalkulasi.



Ketika ada banyak baris yang pakai fungsi Today() apalagi pakai Now().... maka 
akan muncul potensi terkalkulasinya formula berulang kali setiap Excel 
melakukan kalkulasi. Jadi, sebaiknya hasil fungsi Today() apalagi Now(), 
disimpan disebuah cell diluar tabel. Misal di cell Z1 sheet Before.

Jadi di Z1 itu diberi formula :

=Today()      [jangan Now() deh, wong butuh ketelitiannya hanya sampai satuan 
hari saja kok]


Lalu formula diatas diubah menjadi :
=Date(  Year( $Z$1 )  ,  Month( $Z$1 )  -  (  Day(F2)<Day( $Z$1 )  ) ,  
Day(F2))   )


kira-kira begitulah...

So, apa sudah beneran tepat milih VBA yang pasang formula begitu ? yakin sesuai 
kebutuhan ?



Wassalam,
Kid.












2013/10/24 <ones_marle_oke@...>


>>  
>>Dear Om Kid,
>>
>>
>>Ini akan saya coba dlu om kid dengan penjelasan di atas.
>>Tapi permasalahannya, apabila data yang akan disimpan semakin banyak, apakah 
>>tidak akan membuat size penyimpanan excel menjadi membengkak? Karena data 
>>yang sudah terecord saat ini sudah sekitar 1000 something.. Jadi saya 
>>bermaksud membuatkan rumus tersebut menjadi copy paste value pada kolom 
>>tersebut. Dan sebenarnya proses perhitungan tanggal ini akan berjalan setiap 
>>harinya, karena untuk proses AutoFilter saat user(kita) mengklik tombol untuk 
>>AutoFilternya.
>>
>>
>>Sekian dari kasus yang saya tanyakan untuk destination range tersebut.
>>
>>
>>Salam untuk semua beXcel.. 
>>
>>
>>---In belajar-excel@yahoogroups.com, <belajar-excel@yahoogroups.com> wrote:
>>
>>
>>Mau coba tanpa VBA ?
>>
>>pada sheet Before, pastikan W2 sampai W4 sudah berisi formula
>>kemudian blok A1 sampai W4 -> ribbon Home -> group Styles -> format as table 
>>-> pilih salah salah satu styles -> centang my table has header
>>coba copy data baru di A5 sampai A sekiun.
>>
>>Fitur ini bernama Excel Table diatas (xl2007 keatas) . Pada xl2003 bernama 
>>List yang bisa ditemui pada menu Data -> List
>>
>>Wassalam,
>>Kid.
>>
>>
>>
>>
>>
>>
>>
>>2013/10/23 aji suseno <ones_marle_oke@...>
>>
>>
>>
>>>> 
>>>>Dear Master Suhu,
>>>>
>>>>
>>>>Mohon bantuannya lagi dong untuk mengetahui saat kita menggunakan 
>>>>FormulaR1C1 pada macro VBA dan saat kita ingin copy rumus tersebut sampai 
>>>>Rows terakhir pada sheets yang sedang aktif.
>>>>Karena klo saya record macro, ternyata macronya menunjukan rows awal rumus 
>>>>(example W2) dan rows akhir data (example W4). Tertulis seperti ini => 
>>>>Selection.AutoFill Destination:=Range("W2:W4")
>>>>
>>>>
>>>>Sedangkan suhu VBA, ternyata saya mempunyai data yang setiap harinya akan 
>>>>bertambah. Jadi secara otomatis rows akhir data tersebut kan menjadi 
>>>>bertambah juga (example penambahan data W10).
>>>>
>>>>
>>>>Nah, itu bagaimana ya cara menentukan Destination:=Range ini supaya akan 
>>>>membaca pada rows terakhir.
>>>>File excel terlampir ya master suhu VBA. Udah mumet nyoba-nyoba sendiri 
>>>>dengan rumus ajaib sendiri, tapi tetep BUG karena declaration range ga 
>>>>bener (alias Excel nya ikut mumet).
>>>>
>>>>
>>>>Terima kasih om-om, tante-tante, mba-mba, mas-mas semuanya yang bisa 
>>>>membantuk Case ini.
>>>>
>>>>
>>>>Lagi - lagi attachmentnya ga bisa diupload lewat email... :-(
>>>>Saya upload di milis ini ya master semua.
>>>>
>>>>
>>>>http://milis-belajar-excel.1048464.n5.nabble.com/Mengetahui-Destination-Range-terakhir-pada-Rows-workbook-attachment-saja-td5721745.html
>>>>
>>>>
>>>>
>>>>
>>>>
>>

Kirim email ke