Template Usaha › Stok barang › Penjualan + stok barang Excel
Membuat Aplikasi Penjualan dan Stok Barang Sederhana di Excel (Tanpa Makro)
Yang sering disebut "aplikasi penjualan dan stok di Excel" sebenarnya cukup dua tabel: data barang (kode, harga beli, harga jual, stok) dan catatan penjualan (tanggal, kode, qty). Rumus menghubungkan keduanya: harga diambil otomatis dari kode, dan stok berkurang sesuai penjualan.
Tanpa makro/VBA, sehingga file tetap bisa dibuka di Google Sheets dan Excel HP. Contoh berikut memakai tiga barang warung (fiktif).
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Kode | Barang | Harga beli | Harga jual | Stok awal | Terjual | Stok akhir |
| 2 | KP-01 | Kopi susu sachet | 1.500 | 2.500 | 120 | 55 | 65 |
| 3 | GL-01 | Gula 1 kg | 15.000 | 17.500 | 30 | 5 | 25 |
| 4 | AM-06 | Air mineral 600 ml | 3.000 | 4.000 | 48 | 22 | 26 |
| 5 | |||||||
| 6 | |||||||
| 7 | Tanggal | Kode | Qty | Harga jual | Omzet | Laba kotor | |
| 8 | 01/10/2026 | KP-01 | 30 | 2.500 | 75.000 | 30.000 | |
| 9 | 01/10/2026 | AM-06 | 12 | 4.000 | 48.000 | 12.000 | |
| 10 | 02/10/2026 | GL-01 | 5 | 17.500 | 87.500 | 12.500 | |
| 11 | 02/10/2026 | KP-01 | 25 | 2.500 | 62.500 | 25.000 | |
| 12 | 03/10/2026 | AM-06 | 10 | 4.000 | 40.000 | 10.000 | |
| 13 | Total | 313.000 | 89.500 |
Sel berwarna hijau berisi rumus; nilainya dihitung ulang dengan LibreOffice saat situs dibangun dan dicocokkan dengan hitungan manual. Sel bergaris tebal dijelaskan di bawah.
Rumus yang dipakai
Excel dan Google Sheets dengan pengaturan bahasa/regional Indonesia memakai titik koma (;) sebagai pemisah argumen dan koma sebagai desimal. Kalau rumus berkoma menghasilkan pesan error, pakai versi titik koma.
Sel D8
=VLOOKUP(B8,$A$2:$D$4,4,FALSE)
Excel/Sheets regional Indonesia:
=VLOOKUP(B8;$A$2:$D$4;4;FALSE)Harga jual diambil otomatis dari tabel barang berdasarkan kode, jadi kasir cukup mengetik kode dan qty.
Sel E8
=C8*D8
Excel/Sheets regional Indonesia:
=C8*D8Omzet = qty × harga jual.
Sel F8
=C8*(D8-VLOOKUP(B8,$A$2:$C$4,3,FALSE))
Excel/Sheets regional Indonesia:
=C8*(D8-VLOOKUP(B8;$A$2:$C$4;3;FALSE))Laba kotor = qty × (harga jual − harga beli). Harga beli juga diambil dari tabel barang (kolom ke-3).
Sel F2
=SUMIFS($C$8:$C$12,$B$8:$B$12,A2)
Excel/Sheets regional Indonesia:
=SUMIFS($C$8:$C$12;$B$8:$B$12;A2)Total terjual per kode, dijumlah dari catatan penjualan.
Sel G2
=E2-F2
Excel/Sheets regional Indonesia:
=E2-F2Stok akhir = stok awal − terjual (tambahkan kolom pembelian kalau ada barang masuk).
Unduh file contoh ini (.xlsx, gratis) Berisi data fiktif di atas dan rumusnya, bisa dibuka di Excel, WPS, LibreOffice, atau Google Sheets.
Susunan file yang disarankan
- Sheet BARANG: kode, nama, harga beli, harga jual, stok awal, terjual, stok akhir.
- Sheet PENJUALAN: tanggal, kode, qty. Kolom harga, omzet, dan laba kotor berupa rumus.
- Sheet PEMBELIAN (opsional): tanggal, kode, qty masuk. Lalu stok akhir = stok awal + pembelian − terjual.
- Sheet REKAP (opsional): omzet dan laba per hari atau per bulan dengan SUMIFS berdasarkan tanggal.
Di contoh, kedua tabel ada di satu sheet supaya mudah dilihat. Di file sungguhan, memisahkannya ke sheet berbeda membuat input lebih rapi.
Batasan cara ini (jujur)
- Tidak ada struk otomatis atau tombol "bayar". Untuk kasir dengan antrean pelanggan, aplikasi kasir di HP biasanya lebih cepat.
- Kalau beberapa orang mengisi di waktu yang sama, Google Sheets lebih aman daripada file Excel yang dikirim bolak-balik.
- Laba di sini adalah laba kotor (harga jual − harga beli). Biaya sewa, gaji, dan listrik belum dikurangkan; itu dihitung di laporan laba rugi.
Tips input lebih cepat
- Pakai daftar pilihan (validasi data) di kolom Kode.
- Bekukan baris judul (Tampilan › Bekukan Panel) supaya judul kolom tetap terlihat.
- Kalau kode tidak ditemukan, VLOOKUP menampilkan #N/A. Bungkus dengan IFERROR bila ingin tampil kosong:
=IFERROR(VLOOKUP(B8,$A$2:$D$4,4,FALSE),"").
Pertanyaan yang sering muncul
Bisa pakai barcode?
Bisa sebagian. Scanner barcode USB bekerja seperti keyboard: kode barcode diketik ke sel. Jadikan kode barcode sebagai kolom Kode di tabel barang, lalu VLOOKUP bekerja seperti biasa.
Kenapa VLOOKUP memakai FALSE?
FALSE berarti mencari kode yang sama persis. Tanpa FALSE, Excel bisa mengambil barang lain yang kodenya mirip.
Bagaimana kalau harga jual berubah?
Rumus mengambil harga terbaru dari tabel barang, sehingga transaksi lama ikut berubah. Kalau ingin harga lama tetap, salin lalu tempel-sebagai-nilai kolom harga untuk transaksi yang sudah lewat.
Apakah ini sama dengan laporan keuangan?
Belum. Ini mencatat penjualan barang. Uang keluar untuk sewa, gaji, dan belanja lain dicatat di buku kas, lalu dirangkum menjadi laba rugi.
Versi siap pakai
Template Stok Barang + Penjualan + Laba (Excel)
Tahu sisa stok, barang yang perlu dibeli lagi, dan laba tiap bulan, tanpa hitung manual.


Gambar dari file contoh asli. Nama usaha dan angka fiktif.
Kenapa bisa langsung jalan
- Rumus sudah jadi di 10 sheet. Stok akhir, kartu stok, status restock, HPP dan laba kotor tiap penjualan, laporan bulanan, dan dashboard terisi sendiri.
- Sudah dites. 90.004 rumus per file dihitung ulang di LibreOffice: 0 error. Angka di file contoh dicocokkan dengan hitungan terpisah dan hasilnya sama.
- Ada file contoh terisi. 3 bulan data toko sembako fiktif (24 barang, 1.916 baris penjualan), jadi kamu bisa lihat hasil akhirnya sebelum mulai.
- Kolom Cek memberi tahu kalau ada salah isi, misalnya kode barang tidak ada atau stok kurang.
Berapa lama sampai bisa dipakai
Hasil akhirnya bisa langsung kamu lihat di file contoh. Penyiapan file sendiri diperkirakan sekitar 20–30 menit (perkiraan di panduan, tergantung jumlah barang). Setelah itu cukup isi barang masuk dan penjualan.
Yang tidak perlu kamu lakukan
- Tanpa makro dan tanpa kode
- Tidak perlu paham akuntansi
- Cukup isi sel kuning; sel lain dikunci ringan supaya rumus tidak terhapus
- Boleh rekap 1 baris per barang per hari, tidak harus per nota
Isi paket (1 file ZIP)
- Template-Stok-Penjualan-Laba.xlsx: file kosong, 10 sheet (Petunjuk, Pengaturan, Produk, Barang Masuk, Penjualan, Biaya, Stok, Kartu Stok, Laporan, Dashboard). Kapasitas 300 barang dan 5.000 baris penjualan.
- CONTOH-Stok-Penjualan-Laba.xlsx: file yang sama berisi contoh 3 bulan toko sembako (nama dan angka fiktif).
- PANDUAN-Stok-Penjualan-Laba.pdf: 5 halaman, dari cara mulai sampai cara membaca laporan.
Cocok untuk
- Toko kelontong, warung sembako, minimarket kecil
- Grosir atau agen kecil, reseller, toko online yang punya stok
- Satu lokasi stok per file
- Yang belum mau aplikasi kasir berlangganan
Tidak cocok untuk
- Butuh scan barcode atau cetak struk (ini bukan aplikasi kasir)
- Banyak cabang/gudang dalam satu file
- Butuh HPP rata-rata atau FIFO otomatis
- Butuh laporan pajak atau laporan audit
File .xlsx untuk Excel 2010 ke atas (tanpa fungsi khusus Excel 365), juga bisa dibuka di WPS dan LibreOffice. Pembukaan di Google Sheets belum kami uji langsung.
Rp45.000 sekali bayar · file digital, unduh setelah pembayaran di Mayar