Java - Vavai

Mudah Belajar Java Bersama Vavai :-)

Tips Java : Membuat File Excel - Spreadsheet

By Vavai • Jan 25th, 2008 • Category: Tips & Trick 1,769 views Cetak Artikel Ini Cetak Artikel Ini

Salah satu feature laporan yang sering diminta oleh customer adalah laporan data dalam bentuk Spreadsheet. Bisa Excel bisa juga Open Office. Pada dasarnya, karena Open Office mampu membuka file Excel sedangkan Excel tidak mampu (tidak mau ?) membuka file Open Office, pilihan yang ada adalah menambahkan kemampuan Export data ke Excel.

Sebagian report memang memiliki kemampuan export data, namun salah satu keunggulan yang bisa dipetik jika kita membuat kode program yang mampu melakukan ekspor data ke Excel secara manual adalah fleksibilitas yang jauh lebih luas.

Berikut adalah program Java sederhana untuk membuat file Excel. Saya buat sesederhana mungkin karena yang penting adalah polanya. Pada prakteknya, kita dapat menggunakan JDBC untuk mengambil data dan menempatkannya ke Excel.

Saya menggunakan IDE Netbeans, silakan sesuaikan settingnya dengan IDE yang anda gunakan.

  1. Download paket Apache POI, Apache POI - Java API To Access Microsoft Format Files. Saya mendownload versi 3.0.2 beta
  2. Ekstrak dan tempatkan file jar yang ada (poi-3.0.2-beta2-20080112.jar, poi-contrib-3.0.2-beta2-20080112.jar, poi-scratchpad-3.0.2-beta2-20080112.jar) ke dalam folder /opt/jdk1.6.0/lib. Sesuaikan lokasi penempatan dengan lokasi library Java anda.
  3. Buka Netbeans dan buatlah sebuah project
  4. Tambahkan sebuah JFrame Form, setting titlenya dan buat satu button dengan nama btnCreateExcel
  5. Klik kanan pada library project, pilih menu Properties dan pilih menu Add Jar/Folder untuk menambahkan ketiga file jar yang sudah kita tempatkan pada point 2
  6. Ketikkan kode program untuk method actionPerformed btnCreateExcel sebagai berikut
  7. 
    private void btnCreateExcelActionPerformed(java.awt.event.ActionEvent evt) {
    try {
    int i;
    // TODO add your handling code here:
    HSSFWorkbook wb = new HSSFWorkbook();
    HSSFSheet sheet = wb.createSheet("new sheet");
    
    // Create a row and put some cells in it. Rows are 0 based.
    for (i = 1; i <= 10; i++) {
    HSSFRow row = sheet.createRow((short) i);
    
    // Aqua background
    HSSFCellStyle style = wb.createCellStyle();
    style.setFillBackgroundColor(HSSFColor.AQUA.index);
    style.setFillPattern(HSSFCellStyle.BIG_SPOTS);
    HSSFCell cell = row.createCell((short) 1);
    cell.setCellValue("X" + i);
    cell.setCellStyle(style);
    
    // Orange "foreground", foreground being the fill foreground not the font color.
    style = wb.createCellStyle();
    style.setFillForegroundColor(HSSFColor.ORANGE.index);
    style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    cell = row.createCell((short) 2);
    cell.setCellValue("M" + i);
    cell.setCellStyle(style);
    }
    // Write the output to a file
    FileOutputStream fileOut = new FileOutputStream("workbook.xls");
    wb.write(fileOut);
    fileOut.close();
    JOptionPane.showMessageDialog(null, "File Excel sudah tercipta");
    } catch (IOException ex) {
    Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
    }
    }
    
  8. Lakukan import untuk library yang dibutuhkan. Sekedar saran, gunakan opsi * (misalnya import org.apache.poi.hssf.usermodel.*;) untuk mempersingkat penulisan import.
  9. Jalankan form

Program diatas menunjukkan demonstrasi penempatan string pada suatu posisi, termasuk melakukan pewarnaan background. Silakan modifikasi sesuai dengan hasil yang diinginkan.

Cetak Artikel Ini Cetak Artikel Ini

Vavai is Masim "Vavai" Sugianto, Professional IT. Tinggal di Bekasi, bekerja di Jakarta. Aktif pada Komunitas OpenSUSE Indonesia. Berminat pada dunia Open Source dan pengembangan program Java. Keseharian dapat dimonitor pada Blog Pribadi
Email this author | All posts by Vavai

9 Responses »

  1. Sebaiknya jangan menyimpan library apapun ke dalam direktori lib dari JDK. Tapi sebaiknya disimpan di dalam direktori lib dari projek.

  2. Terima kasih untuk masukkannya boss. Itu aku malas ubah classpath atau memasukkan classpath dikode :-)

  3. Kalau artikel ini tujuannya untuk membantu orang lain, sebaiknya jangan malas2 mas Vavai, nanti malah mengajarkan yang kurang benar untuk para pemula.

    Saran saya sih, sebaiknya diperbaiki itu contohnya.

  4. #Gamma,

    Siap mas, saya akan revisi contohnya. Thanks untuk advisnya.

  5. Lha, mas Vavai ini kan juga masih newbie di Java, maklum……
    pemula yg ingin mengajari pemula…….

  6. […] Continue Reading "Tips Java : Membuat File Excel - Spreadsheet" […]

  7. […] digabungkan dengan tutorial sebelumnya : “Membuat file Excel - Spreadsheet”, kita dapat melakukan otomatisasi buka file setelah file report spreadsheet […]

  8. Salam kenal ya mas Vavai.
    Saya ada pertanyaan neh.
    Saya sudah coba buat File Excel dengan java seperti petunjuk mas Vavai dan berhasil.
    Yang saya tanyakan gimana sih codingnya apabila saya mau membuat file Excel yang datanya
    saya ambil dari database…??
    Terima Kasih Buanyak….!

  9. klo males nambah lib, kan di netbeans mah enak tinggal add aja lib yang bersangkutan.

Leave a Reply