Sepertinya ini sangat bermanfaat, mohon kepada penulis bisa kasih attachment contoh file, agar mudah mempelajarinya. >> Diusahakan ya. Moga-moga ada kesempatan lagi untuk bisa buka Excel seperti pagi tadi. Andai bersedia mencoba sendiri. 1. Buat workbook baru. Save As dengan suatu nama (xl 2007 ke atas dengan ekstensi xlsm atau xlsb) 2. tulis di A1 sampai A5 f:\cabang1\mydata1\ f:\cabang1\mydata2\ f:\cabang2\mydata1\ f:\cabang2\mydata2\ f:\cabang3\mydata1\ 3. ke VBE dengan ALT+F11 4. menu Insert -> Module 5. akan ada module baru yang terbentuk, double click Module baru itu biasanya bernama ModuleN dengan N dimulai dari angka 1. 6. klik ruang penulisan script 7. Copas dari baris Public Sub sampai End Sub : Public Sub *KopiFileKatanya*() '1. deklarasi variabel. Misal dengan object range untuk loop informasi folder destinasi. dim rngLoop as range
'2. pastikan file source ada bendanya if lenb(dir$( "c:\temp\BeExcel.pdf" ) ) = 0 then msgbox "tidak ada file source" exit sub endif '3. pastikan ada drive destinasi. 'jika drivenya juga berbeda-beda, masukkan bagian ini kedalam loop di langkah 4, dan sebagai cek pertama. 'Nilai drive bisa diambil dari cell juga. if lenb(dir$( "f:\*" , vbnormal + vbdirectory ) ) = 0 then msgbox "tidak ada drive tujuan" exit sub endif '4. loop masing-masing folder for each rngloop in range("a1:a5") '5. pastikan ada folder destinasinya. Jika tidak ada, dibuatkan. if lenb( dir$( rngloop.value ) ) = 0 then 'cek apakah directorynya tidak ada ? mkdir rngloop.value endif '6. salin filenya :: hati-hati, karena file yang telah ada akan di-replace 'akibat proses 4, pasti ada drivenya. 'akibat proses 5, pasti sudah ada directory destinasinya. filecopy "c:\temp\BeExcel.pdf" , rngloop.value & "BeExcel.pdf" next rngloop End Sub 9. kembali ke worksheet dengan ALT+F11 10. insert sebuah shape (apa saja) 11. klik kanan shape itu, pilih assign macro, pilih prosedur bernama * KopiFileKatanya* lalu tekan OK 12. save workbook 13. klik si shape. Mohon maaf karena belum bisa buka file excel. Andai ada error atas script di atas, mohon koreksinya, karena hanya sebuah imajinasi saja. Regards. Kid. 2011/11/8 agus manggala <agus_ftun...@yahoo.com> > ** > > > Sepertinya ini sangat bermanfaat, mohon kepada penulis bisa kasih > attachment contoh file, agar mudah mempelajarinya. > > atas perkenannya saya ucapkan trima kasih :) > > ------------------------------ > *From:* Kid Mr. <mr.nm...@gmail.com> > *To:* belajar-excel@yahoogroups.com > *Sent:* Tuesday, November 8, 2011 4:53 PM > *Subject:* Re: [belajar-excel] Copy file ke folder tertentu > > > Copy sebuah file ke beberapa directory. > > Asumsi : > 1. fullpathfile source : c:\temp\BeExcel.pdf (nilai > ini bisa juga didapat dari nilai cell) > 2. nama file tujuan adalah tetap, yaitu BeExcel.pdf (atau jadi > nama yang berbeda yang ditentukan di cell) > 3. drive tujuan ke drive f: > 4. directory path berubah sesuai nilai di range A1:A5 misalnya, yang > susunannya sudah lengkap berupa nama directory nya, seperti : > f:\cabang1\mydata1\ > f:\cabang1\mydata2\ > f:\cabang2\mydata1\ > f:\cabang2\mydata2\ > f:\cabang3\mydata1\ > > '1. deklarasi variabel. Misal dengan object range untuk loop informasi > folder destinasi. > dim rngLoop as range > > '2. pastikan file source ada bendanya > if lenb(dir$( "c:\temp\BeExcel.pdf" ) ) = 0 then > msgbox "tidak ada file source" > exit sub > endif > > '3. pastikan ada drive destinasi. > 'jika drivenya juga berbeda-beda, masukkan bagian ini kedalam loop di > langkah 4, dan sebagai cek pertama. > 'Nilai drive bisa diambil dari cell juga. > if lenb(dir$( "f:\*" , vbnormal + vbdirectory ) ) = 0 then > msgbox "tidak ada drive tujuan" > exit sub > endif > > '4. loop masing-masing folder > for each rngloop in range("a1:a5") > '5. pastikan ada folder destinasinya. Jika tidak ada, dibuatkan. > if lenb( dir$( rngloop.value ) ) = 0 then 'cek > apakah directorynya tidak ada ? > mkdir rngloop.value > endif > > '6. salin filenya :: hati-hati, karena file yang telah ada akan > di-replace > 'akibat proses 4, pasti ada drivenya. > 'akibat proses 5, pasti sudah ada directory destinasinya. > filecopy "c:\temp\BeExcel.pdf" , rngloop.value & "BeExcel.pdf" > next rngloop > > Mungkin begitu kali ya. > Kid. > > 2011/11/8 Dewan Deya <dwan...@yahoo.co.id> > > ** > > Tks Mr Kid > > Ini lagi coba pakai syntax > FileCopy filename_asal , filename_tujuan > > cuma kesulitan menetapkan distinasi nya, karena path destinasi beda beda > sesuai dengan cabang yang ada. > Pakai looping. > > Maaf , masih cupu tentang macro vba > > Tks atas bantuannya > > > > file terlampir > > > > > ------------------------------ > *Dari:* Kid Mr. <mr.nm...@gmail.com> > *Kepada:* belajar-excel@yahoogroups.com > *Dikirim:* Sabtu, 5 November 2011 7:39 > *Judul:* Re: [belajar-excel] Copy file ke folder tertentu > > > Dear Dewan, > > Syntax : > FileCopy filename_asal , filename_tujuan > > misal : c:\temp\BeExcel.pdf akan di copy ke d:\data\milis dengan nama > tetap sebagai BeExcel.pdf > FileCopy "c:\temp\BeExcel.pdf" , "d:\data\milis\BeExcel.pdf" > > Buat sebuah module di VBE > Buat prosedur berikut : > public sub CopyFileku() > FileCopy "c:\temp\BeExcel.pdf" , "d:\data\milis\BeExcel.pdf" > end sub > > Jika semua file pdf, gunakan file xcopy. Jadi ganti FileCopy blah-blah > dengan : > shell "xcopy c:\temp\*.pdf d:\data\milis\*.pdf" > yang perlu diperhatikan, untuk nama folder yang menggunakan spasi, ganti > dengan shortnamenya. > > Pada Windows 7 juga ada RoboCopy yang mirip dengan xcopy. Syntax-nya agak > berbeda sedikit. > Untuk lebih jelasnya, ke CommandPrompt dan coba lihat help nya dengan : > XCopy /? atau RoboCopy /? > > Regards. > Kid. > > 2011/11/4 Dewan Deya <dwan...@yahoo.co.id> > > ** > > > Dear pakar excel, > > > Saya ada sebuah file pdf (di folder c:\temp\) yang akan di copy ke folder > tertentu.Bagaimana cara membuat macro nya. > File terlampir. > > Terimakasih > > > > > > > > > > > > > >