CARA MEMBUAT REPORT EXCEL DI PHP

Tutorial PHP Part 53 – Cara Membuat Report Excel di PHP menggunakan library PHPSpreadsheet

Import Library PHPSpreadsheet

CARA MEMBUAT REPORT EXCEL DI PHP

PHPSpreadsheet adalah library PHP yang digunakan untuk membuat file excel. Untuk menggunakan library ini, kita perlu menginstall nya terlebih dahulu. Berikut cara menginstall PHPSpreadsheet menggunakan composer :

composer require phpoffice/phpspreadsheet

Membuat File Excel

Setelah PHPSpreadsheet terinstall, selanjutnya adalah membuat file excel. Kita bisa membuat file excel kosong menggunakan class Spreadsheet, atau membaca file excel yang sudah ada menggunakan class IOFactory.

Berikut contoh membuat file excel kosong :

use PhpOffice\PhpSpreadsheet\Spreadsheet;

$spreadsheet = new Spreadsheet();

$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('hello world.xlsx');

Contoh membaca file excel :

use PhpOffice\PhpSpreadsheet\IOFactory;

$spreadsheet = IOFactory::load("hello world.xlsx");

$worksheet = $spreadsheet->getActiveSheet();

Mengisi Data pada Excel

Setelah file excel dibuat, selanjutnya adalah mengisi data pada excel. Kita bisa mengisi data pada cell tertentu, maupun pada baris dan kolom tertentu.

Berikut contoh mengisi data pada cell :

use PhpOffice\PhpSpreadsheet\Spreadsheet;

$spreadsheet = new Spreadsheet();

$worksheet = $spreadsheet->getActiveSheet();
$worksheet->setCellValue('A1', 'Hello');
$worksheet->setCellValue('B1', 'World');

$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('hello world.xlsx');

Contoh mengisi data pada baris dan kolom :

use PhpOffice\PhpSpreadsheet\Spreadsheet;

$spreadsheet = new Spreadsheet();

$worksheet = $spreadsheet->getActiveSheet();
$worksheet->fromArray([
    ['Hello', 'World'],
    ['World', 'Hello']
], NULL, 'A1');

$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('hello world.xlsx');

Formatting pada Excel

Selain mengisi data pada excel, kita juga bisa melakukan formatting pada excel, seperti mengatur lebar kolom, warna background cell, dan sebagainya.

Berikut contoh melakukan formatting pada excel :

Baca Juga :  CARA IMPORT DATA TAGPOS MACROS FORM WORD DARI EXCEL

use PhpOffice\PhpSpreadsheet\Spreadsheet;

$spreadsheet = new Spreadsheet();

$worksheet = $spreadsheet->getActiveSheet();
$worksheet->getColumnDimension('A')->setWidth(20);
$worksheet->getStyle('A1:B2')->getFill()->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)->getStartColor()->setARGB('FFFF0000');

$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xlsx');
$writer->save('hello world.xlsx');

Cara Membuat Report Excel di PHP menggunakan library PHPSpreadsheet

Eksport html Table ke Excel dengan PHP

Export HTML Table to Excel

Pada artikel kali ini, kita akan belajar cara eksport html table ke excel dengan PHP. Eksport HTML table ke excel merupakan hal yang sangat umum dilakukan pada pengembangan web. Ada banyak cara untuk eksport html table ke excel, kali ini kita akan menggunakan library PHPExcel.

Library PHPExcel

PHPExcel merupakan library PHP yang digunakan untuk mengolah file Excel. Pada awal tahun 2017, semua pengembangan dari PHPExcel beralih ke PhpSpreadsheet. Oleh karena itu, PhpSpreadsheet menjadi pilihan yang lebih tepat untuk pengolahan file Excel pada PHP saat ini.

Cara menggunakan PhpSpreadsheet

Untuk menggunakan PhpSpreadsheet, kita perlu menginstall nya terlebih dahulu dengan composer. Berikut cara menginstall PhpSpreadsheet menggunakan composer :

composer require phpoffice/phpspreadsheet

Eksport HTML Table ke Excel

Setelah menginstall library PhpSpreadsheet, kita selanjutnya akan mencoba eksport HTML table ke excel. Berikut contoh script Php :

require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = new Spreadsheet();

$worksheet = $spreadsheet->getActiveSheet();

$htmlTable = '
Nama Umur
Ayu 20 Tahun
Budi 21 Tahun
'; $worksheet->fromHtml($htmlTable); $writer = new Xlsx($spreadsheet); $writer->save('html to excel.xlsx');

Script tersebut akan membuat file excel “html to excel.xlsx” yang berisi data pada HTML table. Kita bisa mengganti data pada HTML table dengan data yang kita inginkan. Kita juga bisa mengubah styling pada Excel dengan menggunakan PhpSpreadsheet.

Excel VBA – Generate a report in dashboard format

Excel VBA Report

Visual Basic for Application (VBA) adalah bahasa pemrograman yang digunakan oleh Microsoft Office untuk mengembangkan aplikasi Office dan otomasi tugas-tugas di dalam aplikasi Office. Pada artikel kali ini, kita akan belajar cara membuat report di Excel menggunakan VBA.

Baca Juga :  Cara Membuat Dashboard Di Excel 2016

Di dalam Excel, kita bisa membuat berbagai macam report, seperti laporan harian, mingguan, bulanan, maupun tahunan. Berikut contoh cara membuat report harian di Excel menggunakan VBA :

Sub Generate_Daily_Report()

Dim wsData As Worksheet
Dim wsReport As Worksheet
Dim LastRow As Long

Set wsData = ThisWorkbook.Worksheets("Data")
Set wsReport = ThisWorkbook.Worksheets("Report")

LastRow = wsData.Range("A" & Rows.Count).End(xlUp).Row

wsReport.Range("A4:H" & LastRow + 3).Clear
wsReport.Range("B1").Value = "Daily Report - " & Format(Date, "dd-mm-yyyy")
wsReport.Range("A4:H4").Value = Array("No", "Tanggal", "Nama Sales", "Alamat", "Barang", "Jumlah", "Harga Satuan", "Total")

For i = 1 To LastRow
    If wsData.Range("A" & i).Value = Date Then
        wsReport.Range("A" & i + 3).Value = i
        wsReport.Range("B" & i + 3).Value = wsData.Range("A" & i).Value
        wsReport.Range("C" & i + 3).Value = wsData.Range("B" & i).Value
        wsReport.Range("D" & i + 3).Value = wsData.Range("C" & i).Value
        wsReport.Range("E" & i + 3).Value = wsData.Range("D" & i).Value
        wsReport.Range("F" & i + 3).Value = wsData.Range("E" & i).Value
        wsReport.Range("G" & i + 3).Value = wsData.Range("F" & i).Value
        wsReport.Range("H" & i + 3).Value = wsData.Range("G" & i).Value
    End If
Next i

End Sub

Script tersebut akan membuat report harian berdasarkan data di sheet “Data”, dengan header tanggal, dan tabel yang berisi data penjualan pada tanggal tersebut. Script tersebut bisa diubah sesuai dengan kebutuhan report yang akan dibuat.

Cara Mendesain Halaman Export Excel Dengan Php – Rumah Siswa

Export HTML Table to Excel

Pada artikel kali ini, kita akan belajar cara mendesain halaman export excel dengan PHP. Saat eksport HTML Table ke Excel, kita kadang-kadang ingin agar halaman Excel yang dihasilkan lebih menarik dan berisi meta data yang dibutuhkan. Berikut cara mendesain halaman export excel dengan PHP :

Pertama, kita perlu membuatnya terlebih dahulu sebuah tabel HTML yang akan di-export. Berikut contoh script HTML :

<table>
    <thead>
        <tr>
            <th>No</th>
            <th>Nama</th>
            <th>Umur</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>1</td>
            <td>Ayu</td>
            <td>20 Tahun</td>
        </tr>
        <tr>
            <td>2</td>
            <td>Budi</td>
            <td>21 Tahun</td>
        </tr>
    </tbody>
</table>

Setelah itu, kita membutuhkan file PHP untuk membuat file Excel. Pada file PHP tersebut, kita bisa mengatur meta data Excel seperti title, author, description, dan sebagainya. Berikut contoh script PHP :

Baca Juga :  CARA MEMBUKA FILE EXCEL YANG DIPROTECT NAMUN RUSAK

require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = new Spreadsheet();

$worksheet = $spreadsheet->getActiveSheet();

$htmlTable = '
No Nama Umur
1 Ayu 20 Tahun
2 Budi 21 Tahun
'; $worksheet->setTitle('Data Siswa'); $worksheet->fromHtml($htmlTable); $properties = $spreadsheet->getProperties(); $properties->setTitle('Laporan Data Siswa'); $properties->setCreator('Rumah Siswa'); $properties->setDescription('Laporan Data Siswa'); $writer = new Xlsx($spreadsheet); $writer->save('data siswa.xlsx');

Script tersebut akan membuat file Excel “data siswa.xlsx” dengan meta data yang telah kita set pada script PHP tersebut. Kita bisa mengubah meta data tersebut sesuai dengan kebutuhan kita.

FAQ

1. Apakah saya bisa menambahkan gambar pada file Excel yang dibuat?

Iya, kita bisa menambahkan gambar pada Excel dengan menggunakan library PhpSpreadsheet.

2. Bisakah report di Excel menggunakan data dari database?

Iya, kita bisa mengambil data dari database lalu membuat report di Excel dengan menggunakan PhpSpreadsheet.

Video Tutorial

Berikut video tutorial membuat report Excel dengan PHP menggunakan library PHPSpreadsheet :

Berikut video tutorial eksport HTML Table ke Excel dengan PHP :

Berikut video tutorial membuat report di Excel menggunakan VBA :

Berikut video tutorial mendesain halaman export Excel dengan PHP :