Cara export tabel html ke excel: Dalam pembuatan program SIM(Sistem Informasi Manajemen), pasti ada bagian reporting. Bagian reporting dibutuhkan untuk mengelola data yang telah diinput untuk dijadikan laporan, biasanya laporan ini akan diolah kembali atau langsung didistribusikan.
Dalam modul reporting tersebut pasti ada fitur export, baik export ke Pdf ataupun export ke Excel. Jika SIM yang kita buat dalam bentuk web dan PHP sebagai bahasa pemograman-nya, maka kita bisa menggunakan fungsi header dari PHP yang sangat simple untuk merubah tabel html ke bentuk format Microsoft Excel.
Sebenarnya terdapat beberapa library untuk melakukan export, tapi di tutorial ini kita akan menggunakan cara paling cepat, yaitu menggunakan fungsi header. Ok langsung saja kita mulai.
Cara Export Tabel Html: Skrip PHP
Pertama kita ketik-kan skrip dibawah ini, skrip berikut adalah fungsi header yang dimaksud.
<?php header("Content-type: application/vnd-ms-excel"); header("Content-Disposition: attachment; filename=hasil.xls"); ?>
Pada baris bertama berfungsi untuk merubah tabel HTML ke file excel, sedangkan pada baris kedua berfungsi untuk menentukan nama file hasil export.
Cara Export Tabel Html: Skrip HTML
Setelah kita mengetikkan skrip fungsi header, maka selanjutnya kita buat tabel HTML, dalam tabel HTML tersebut kita masukkan data-data yang ingin diexport. Jika anda mempunyai data dari MySQL atau sumber database lain, anda bisa menyisipkan data tersebut di dalam tabel HTML. Oke, sebagai contoh kita akan menggunakan skrip tabel HTML berikut:
<table border="1"> <thead> <tr> <th>Name</th> <th>Position</th> <th>Office</th> <th>Age</th> <th>Start date</th> <th>Salary</th> </tr> </thead> <tr> <td>Tiger Nixon</td> <td>System Architect</td> <td>Edinburgh</td> <td>61</td> <td>2011/04/25</td> <td>$320,800</td> </tr> <tr> <td>Garrett Winters</td> <td>Accountant</td> <td>Tokyo</td> <td>63</td> <td>2011/07/25</td> <td>$170,750</td> </tr> <tr> <td>Ashton Cox</td> <td>Junior Technical Author</td> <td>San Francisco</td> <td>66</td> <td>2009/01/12</td> <td>$86,000</td> </tr> <tr> <td>Cedric Kelly</td> <td>Senior Javascript Developer</td> <td>Edinburgh</td> <td>22</td> <td>2012/03/29</td> <td>$433,060</td> </tr> <tr> <td>Airi Satou</td> <td>Accountant</td> <td>Tokyo</td> <td>33</td> <td>2008/11/28</td> <td>$162,700</td> </tr> <tr> <td>Brielle Williamson</td> <td>Integration Specialist</td> <td>New York</td> <td>61</td> <td>2012/12/02</td> <td>$372,000</td> </tr> <tr> <td>Herrod Chandler</td> <td>Sales Assistant</td> <td>San Francisco</td> <td>59</td> <td>2012/08/06</td> <td>$137,500</td> </tr> <tr> <td>Rhona Davidson</td> <td>Integration Specialist</td> <td>Tokyo</td> <td>55</td> <td>2010/10/14</td> <td>$327,900</td> </tr> <tr> <td>Colleen Hurst</td> <td>Javascript Developer</td> <td>San Francisco</td> <td>39</td> <td>2009/09/15</td> <td>$205,500</td> </tr> <tr> <td>Sonya Frost</td> <td>Software Engineer</td> <td>Edinburgh</td> <td>23</td> <td>2008/12/13</td> <td>$103,600</td> </tr> <tr> <td>Jena Gaines</td> <td>Office Manager</td> <td>London</td> <td>30</td> <td>2008/12/19</td> <td>$90,560</td> </tr> <tr> <td>Quinn Flynn</td> <td>Support Lead</td> <td>Edinburgh</td> <td>22</td> <td>2013/03/03</td> <td>$342,000</td> </tr> </table>
Perhatikan pada skrip tabel HTML diatas, pada tabel kita berikan atribut border dan valunya kita set angka 1. Dengan pemberian atribut border, maka hasil export akan mempunyai border juga, ini menunjukkan bahwa pengaturan atribut pada tabel HTML juga berdampak pada hasil export.
Kita juga bisa menambahkan atribut lain seperti rowspan dan colspan, dengan begitu kita bebas memodifikasi hasil export dan tidak hanya melulu dengan hasil export yang standar.
Hasil Akhir
Hasil akhir skrip Cara cepat export tabel html ke excel sebagai berikut:
<?php header("Content-type: application/vnd-ms-excel"); header("Content-Disposition: attachment; filename=hasil.xls"); ?> <table border="1"> <thead> <tr> <th>Name</th> <th>Position</th> <th>Office</th> <th>Age</th> <th>Start date</th> <th>Salary</th> </tr> </thead> <tr> <td>Tiger Nixon</td> <td>System Architect</td> <td>Edinburgh</td> <td>61</td> <td>2011/04/25</td> <td>$320,800</td> </tr> <tr> <td>Garrett Winters</td> <td>Accountant</td> <td>Tokyo</td> <td>63</td> <td>2011/07/25</td> <td>$170,750</td> </tr> <tr> <td>Ashton Cox</td> <td>Junior Technical Author</td> <td>San Francisco</td> <td>66</td> <td>2009/01/12</td> <td>$86,000</td> </tr> <tr> <td>Cedric Kelly</td> <td>Senior Javascript Developer</td> <td>Edinburgh</td> <td>22</td> <td>2012/03/29</td> <td>$433,060</td> </tr> <tr> <td>Airi Satou</td> <td>Accountant</td> <td>Tokyo</td> <td>33</td> <td>2008/11/28</td> <td>$162,700</td> </tr> <tr> <td>Brielle Williamson</td> <td>Integration Specialist</td> <td>New York</td> <td>61</td> <td>2012/12/02</td> <td>$372,000</td> </tr> <tr> <td>Herrod Chandler</td> <td>Sales Assistant</td> <td>San Francisco</td> <td>59</td> <td>2012/08/06</td> <td>$137,500</td> </tr> <tr> <td>Rhona Davidson</td> <td>Integration Specialist</td> <td>Tokyo</td> <td>55</td> <td>2010/10/14</td> <td>$327,900</td> </tr> <tr> <td>Colleen Hurst</td> <td>Javascript Developer</td> <td>San Francisco</td> <td>39</td> <td>2009/09/15</td> <td>$205,500</td> </tr> <tr> <td>Sonya Frost</td> <td>Software Engineer</td> <td>Edinburgh</td> <td>23</td> <td>2008/12/13</td> <td>$103,600</td> </tr> <tr> <td>Jena Gaines</td> <td>Office Manager</td> <td>London</td> <td>30</td> <td>2008/12/19</td> <td>$90,560</td> </tr> <tr> <td>Quinn Flynn</td> <td>Support Lead</td> <td>Edinburgh</td> <td>22</td> <td>2013/03/03</td> <td>$342,000</td> </tr> </table>
Simpan skrip diatas dalam file php. Ketika dijalankan file tersebut maka akan langsung muncul kotak dialog untuk menyimpan file “hasil.xls”.
Gunakan cara ini jika menginginkan hasil yang cepat, tapi juga perlu diperhatikan bahwa cara ini ditujukan untuk export data yang tidak terlalu rumit dan komplek.
Happy Nyekrip! Terimakasih.
Terimakasih infonya sangat membantu. BTW blognya keren.. simple, clean, dan elegant.
wah. Caranya simple sekali ya, g nyangka. btw terimakasih udah share
sama-sama :)
makasih ilmunya kirain panjang stepnya malah cuma dua baris ;)
mau tanya, saya ikuti cara ini sukses membuat file xls
namun kendalanya ketika value nya berupa angka ribuan dengan separator koma (24,040) , setelah create ke xls, hasil nya adalah 24,04
apakah ada caranya agar yang ter konvert ke xls full semua dibelakang koma?
thx sebelumnya
coba search d google mas bro, untuj format decimal value dr php ke excel
kasih tanda petik satu ( ‘ ) didepan data yang ingin di tampilkan. contohh:
tbody
td ‘25040 td
tbody
Thanks sudah berbagi.
kalo caranya eksport ke word gimana min?
wah.. blum pernah coba tuh gan :)
gimana min kalau 2 tabel html namun simpannya beda sheet di excel ?? mksih sebelumnya min… mudah2an bisa kejawab
wah, tidak bisa pakai cara ini :)
Impor ke mysql ?
bagaimana cara agar saat save ke excel tapi nama save-anya bisa di ganti nama terlebih dahulu
caranya simple banget, thx ya udh share ilmunya gan
kalo ingin pakai header sam footer,dan hasil excelnya jadi 2 halaman bagaimana ?
Wah, makasih banyak ini gan. sangat bermanfaat. penulisannya juga mudah untuk bisa di mengerti gan. makasih sekali lagi.
makasih infonya min, saya mau nnya kalo cara agar dimulai dari kolom B gimana ya? trus kalo mau mengatur warna tabelnya gimana?
Tidak bisa dibuka di excel 2010
Penjelasannya mudah dipamahi
izin copas buat di blog
Kalau dari range data dari file excell. Saya mau export sebagai list box httml, gimana bro?
Berdasarkan artikel diatas, script yang dibuat adalah untuk mengconvert table html to xl saat halaman di load. Bagaimana jika sebuah table html dapat di convert dengan penerapan datatables. Jadi yang di convert adalah coloumn yang muncul dari hasil search pada table melalui sebuah button “export to xl”.
gan, kalau mau nambahin gambar kode nya apa ya ?
mau tanya , kalau ada image nya bagaimana ya ? saya coba tidak bisa terbaca .. padahal kalo di cek html nya di layar sudah benar
image tidak bisa gan..
Kalo dibuka di mobile device hasil exportnya jadi html ya ?
Belum coba Gan, coba aja.. :)