Terima kasih jawabannya Mr. Kid. Saya hanya bisa panjatkan doa atas jawaban ini. Ya Allah, terimalah amal baiknya yang telah membantu kami padahal kami tidak memberi apa-apa untuknya. Angkatlah derajatnya disisiMu dunia akhirat. Permudahkanlah segala urusannya. Panjangkanlah umurnya dalam kebaikan sehingga bisa terus berbagi sesama. Kabulkanlah doaku, Ya Allah. Amiin ya Robbal ‘Alamiin…
Regards, Tio From: belajar-excel@yahoogroups.com [mailto:belajar-excel@yahoogroups.com] Sent: Wednesday, November 23, 2016 11:33 AM To: BeExcel Subject: Re: [belajar-excel] Release memory Wa'alaikumussalam wr wb Hai Tio, Pertanyaan 1 : Out of memory bisa disebabkan oleh banyak hal tergantung proses yang dilakukan, antara lain : 1. Proses copy suatu range yang cukup luas dan banyak (berulang) tapi tidak disertai application.cutcopymode=false setelah proses paste dilakukan. > disiplinlah menambahkan baris Application.cutcopymode=false setelah proses paste 2. Proses pengambilan data melalui data connection (fitur get external data) dengan jumlah records yang sangat banyak. > perbaiki query dan kurangi jumlah records yang harus diambil. 3. Terlalu banyak workbook yang dibuka dalam 1 (SATU) instansi aplikasi Excel. INGAT, Excel bisa dibuka dalam beberapa instansi aplikasi. Artinya, jika 1 instansi Excel diberi ijin menggunakan RAM 2GB, maka jika ada 2 instansi Excel, maka 2 buah Excel itu dapat menggunakan RAM 4GB (bila RAM mencukupi). Dalam setiap instansi Excel bisa dibuka banyak workbook. > Mulailah mengurangi kebiasaan membuka workbook yang terlalu banyak, apalagi link formula antar workbook. Pertanyaan 2 : 1. kenali proses yang dilakukan, apakah proses tersebut membutuhkan banyak memory atau tidak. > Kalau ambil data dari database sebanyak 50juta records berarti besar kan, > maka pasti ada potensi out of memory, jadi gak usah ambil segitu banyak. > Jumlah records maksimal yang bisa diambil sampai muncul out of memory tidak > dapat dipastikan karena tergantung jumlah kolom dan tipe data setiap kolom. > Kalau copy suatu range, bisa diketahui luasannya bukan ? Kalau kira-kira > sangat luas dan banyak berisi data (termasuk formula), berarti ada potensi > akan out of memory jika dilakukan berulang-ulang. 2. Khusus untuk kegiatan Copy suatu range, segera beri baris application.cutcopymode=false begitu proses selesai. > misal copy range A1:Z99999 lalu di paste values ke range BB1, maka karena > dikuatirkan bisa menyebabkan out of memory, maka setelah proses paste values > diberi baris application.cutcopymode=false **** disetiap proses copy lalu paste ? >>> TIDAK, hanya di copy lalu paste yang memproses range yang luas dan dikuatirkan out of memory **** kalau ada 1000 proses copy paste dan semuanya dikuatirkan out of memory gimana ? >>>> tambahkan baris application.cutcopymode=false di setiap proses (berarti ada 1000 baris application.cutcopymode=false) <simpel kan> Pertanyaan 3 : Tutup workbook-nya saja Wassalamu'alaikum wr wb Kid 2016-11-23 9:44 GMT+07:00 Tio Adi Bayu Adjie tio.ad...@ptssb.co.id<mailto:tio.ad...@ptssb.co.id> [belajar-excel] <belajar-excel@yahoogroups.com<mailto:belajar-excel@yahoogroups.com>>: Assalamu alaikum. Lama tak jumpa dengan Master Excel (Mr.Kid dan teman-teman). Mau tanya nih. Saya buat program dengan vba excel tapi setelah di execute, terjadi out of memory. Pertanyaannya : 1. Apa saja yang menyebabkan out of memory ? 2. Bagaimana mendeteksi suatu coding yang menyebabkan out memory ? 3. Bagaimana merelease memory untuk semua coding saya tanpa perlu release memory satu persatu coding vba saya ? Terima Kasih atas bantuannya. Hanya Allah SWT yang membalas kebaikan Mr. Kid dan teman-teman semua. Wassalam. Tio .