Rekap Penjualan 6 Bulan Toko Bangunan Tiga Cabang di Excel
Dari kelas Rekap dan Laporan Penjualan

Rekap bulan × cabang, peringkat cabang, dan lima produk teratas dari 2.226 transaksi contoh, disusun dengan SUMIFS, SUMPRODUCT, RANK.EQ, dan LARGE. Hasilnya: cabang Selatan tumbuh 223% dan lima produk menopang 72% omzet.
Latar belakang
Pemilik toko bangunan dengan tiga cabang mencatat penjualan di satu lembar kerja besar, tetapi tiap akhir bulan masih menghitung ulang omzet per cabang dengan kalkulator. Pertanyaan yang ingin dijawab:
- Berapa omzet tiap cabang per bulan, dan cabang mana yang tumbuh?
- Produk apa yang benar-benar menopang omzet?
- Kapan penjualan memuncak, supaya stok disiapkan lebih awal?
Data
Proyek ini memakai data contoh yang saya bangkitkan untuk latihan, meniru pola toko bangunan: ramai menjelang Lebaran (Februari–Maret), turun di April, dan satu cabang baru (Selatan) yang dibuka Januari.
- 2.226 transaksi, 3.585 baris item, Januari–Juni 2026
- Kolom tabel
Penjualan: Tanggal, Bulan, Cabang, Produk, Qty, Harga, Total - 12 produk, 3 cabang
Alat dan rumus
Excel dengan tabel terstruktur (Ctrl+T) supaya rumus tetap benar saat baris bertambah. Rumus utama dari kelas Rekap dan Laporan Penjualan: SUMIFS, SUMPRODUCT, RANK.EQ, LARGE, FILTER, SORT, dan UNIQUE.
Proses
1. Daftar cabang dan produk tanpa diketik ulang
=SORT(UNIQUE(Penjualan[Cabang]))
=SORT(UNIQUE(Penjualan[Produk]))
Kalau ada cabang atau produk baru, daftarnya ikut bertambah sendiri.
2. Matriks bulan × cabang
Satu rumus di sel B2, lalu disalin ke seluruh kisi. Tanda $ mengunci kolom bulan ($A2) dan baris cabang (B$1), jadi satu rumus cukup untuk 18 sel.

=SUMIFS(Penjualan[Total]; Penjualan[Bulan]; $A2; Penjualan[Cabang]; B$1)
3. Persentase terhadap total dan peringkat cabang
=E2/$E$8
=RANK.EQ(B8; $B$8:$D$8; 0)
4. Lima produk teratas
LARGE mengambil lima omzet terbesar dari rekap produk, lalu FILTER menampilkan nama produknya:
=LARGE(RekapProduk[Omzet]; {1;2;3;4;5})
=SORT(FILTER(RekapProduk; RekapProduk[Omzet]>=LARGE(RekapProduk[Omzet]; 5)); 2; -1)
5. Pertanyaan dengan syarat ganda
Pemilik bertanya, "Berapa penjualan semen di cabang Selatan sejak April?" Satu SUMPRODUCT menjawabnya tanpa kolom bantu:
=SUMPRODUCT((Penjualan[Cabang]="Selatan")*(Penjualan[Produk]="Semen 50 kg")*(Penjualan[Bulan]>=4)*Penjualan[Total])
Hasilnya Rp42.568.000.
Hasil

| Cabang | Omzet 6 bulan | Porsi | Peringkat |
|---|---|---|---|
| Utama | Rp549.668.000 | 41,3% | 1 |
| Timur | Rp452.075.000 | 34,0% | 2 |
| Selatan | Rp327.821.000 | 24,7% | 3 |
| Total | Rp1.329.564.000 | 100% |
- Omzet memuncak di Mar (Rp275,6 jt), lalu turun 30% di April setelah musim renovasi menjelang Lebaran.
- Cabang Selatan tumbuh 223% dari Januari ke Juni, dari Rp25,1 jt menjadi Rp81,0 jt per bulan.
- Lima produk teratas (Semen 50 kg, Besi beton 10 mm, Keramik 40×40 /dus, Pasir /karung, Genteng metal /lembar) menyumbang 72% omzet.
Rekomendasi
- Siapkan stok semen, keramik, dan besi mulai Januari. Puncaknya jatuh di Februari–Maret; kekosongan stok di bulan itu paling mahal.
- Pindahkan sebagian stok cadangan ke cabang Selatan. Pertumbuhannya konsisten tiap bulan dan porsinya sudah mendekati cabang Timur.
- Pakai file ini sebagai templat bulanan. Tempel data baru ke tabel
Penjualan; matriks, peringkat, dan top-5 ikut terbarui tanpa rumus diubah.
Keterbatasan
Data contoh ini tidak memuat retur, diskon, dan modal barang, jadi yang dihitung adalah omzet, bukan laba. Untuk laba, perlu kolom harga pokok per produk.
Yang saya pelajari
Satu rumus SUMIFS dengan referensi campuran ($A2, B$1) menggantikan 18 rumus yang diketik satu per satu, dan itulah yang membuat rekap bisa dipakai ulang tiap bulan.
Irfan Akbar Wildani
Pengelola KelasGratis · Excel, SQL, dan Python untuk kerja
Proyek lain dari Irfan

Mengapa Pesanan Katering Sering Terlambat? Analisis Pengiriman dengan pandas
Menelusuri 3.200 pesanan contoh dengan pandas: membersihkan nilai kosong, merge data kurir, lalu groupby per zona dan jam. Keterlambatan bukan salah kurir, tetapi rute jauh yang berangkat di jam macet; menggeser jadwal zona Timur diperkirakan menurunkan keterlambatan dari 14% ke 11%.

Siapa yang Kembali? Analisis Retensi Pelanggan Kedai Kopi dengan SQL
Tabel retensi kohort, segmen pelanggan, dan pola kunjungan pertama dari 1.850 pelanggan contoh dengan WITH, CASE, dan strftime di SQLite. Pelanggan setia hanya 11% orang tetapi menopang 33% omzet.