Salah satu program di kantor (laporan data penjualan dealer motor Yamaha) hanya menerima input file CSV. Masalahnya dari pihak dealer pertama kali memasukkan data adalah ke lembar kerja Excel dan baru direkap ke programnya tiap akhir minggu atau malah bulan tergantung rajin tidaknya karyawan. Hal ini disebabkan kalau datanya sudah banyak dan terbagi dalam beberapa hingga puluhan worksheet bisa repot sekali memindahkannya.
Kalau anda mengalami kasus serupa dimana anda membutuhkan solusi untuk mengkonversi file XLS atau XLSX ke CSV dan setiap sheet akan disimpan menjadi file CSVnya sendiri – sendiri. Solusi pertama adalah dengan menggunakan VBA Macro, jadi silahkan buat Macro baru bernama (misal) XLSX_ke_CSV.
Dan kodenya isikan sama dengan yang dibawah:
Sub XLSX_ke_CSV() Dim ws As Worksheet Dim path As String path = ActiveWorkbook.path & "\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1) For Each ws In Worksheets ws.Copy ActiveWorkbook.SaveAs Filename:=path & "_" & ws.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False ActiveWorkbook.Close False Next End Sub
Setelah itu eksekusi Macronya. Bagusnya metode ini sudah terintegrasi dalam Office, dan kalau sudah dibuat tinggal anda jalankan lagi pas dibutuhkan.
Alternatifnya kalau anda belum pernah pakai Macro atau merasa kesulitan bisa pakai program gratis XLS to CSV Converter: http://cwestblog.com/2013/04/12/batch-excel-to-csv-converter-application/ dan ukurannya sangatlah kecil, cuma 6.3KB.
Tinggal dibuka file Zipnya dan jalankan programnya. Kemudian masukkan lokasi folder yang berisi file XLS/XLSXnya dan sisanya tinggal anda menunggu proses konversinya selesai. Hasilnya nanti sama, setiap sheet dalam dokumen Excel akan dipecah menjadi file CSV sendiri – sendiri dalam lokasi folder yang sama. Yang ini lebih sederhana solusinya karena tinggal ikut saja apa yang ada dalam aplikasinya. Dan juga bisa dilakukan secara massal karena yang diproses langsung seluruh isi folder.
Untuk layanan online untuk mengubah XLS/XLSX ke CSV terus terang saya belum pernah ketemu yang cocok, selain karena butuh internet untuk prosesnya juga sering kali dibatasi jumlah worksheet yang bisa dikonversi. Apalagi yang butuh alamat email, tambah buang waktu jadinya karena tidak bisa saat itu juga diselesaikan.
Semoga bermanfaat. 🙂