TL;DR
Buku stok barang harian adalah catatan mutasi barang per hari yang isinya tanggal, kode barang, jumlah masuk, jumlah keluar, dan sisa stok. Rumus intinya cuma satu: sisa stok = stok awal + masuk - keluar. Versi Excel-nya bisa dibikin dengan dua sheet, satu buat master barang dan satu buat mutasi, terus disambungin pakai SUMIF supaya sisa stok kehitung otomatis.
Buku stok barang harian adalah catatan mutasi barang per hari yang isinya minimal lima kolom: tanggal, nama atau kode barang, jumlah masuk, jumlah keluar, dan sisa stok.
Rumus intinya cuma satu baris. Sisa stok = stok awal + masuk - keluar. Sisanya soal disiplin nulis.
Di bawah ada format kolom yang siap kamu tiru ke buku tulis, contoh pengisian satu hari penuh, terus cara mindahin catatan yang sama ke Excel biar sisa stoknya kehitung sendiri.
Buku stok barang harian adalah catatan yang ngerekam tiap barang yang masuk dan keluar dari toko dalam satu hari, lengkap sama sisa stok setelah tiap transaksi. Fungsinya buat tau posisi stok tanpa harus ngitung fisik di rak, dan buat nelusuri dari mana selisih muncul kalau angkanya nggak cocok.
Bentuknya bisa buku tulis bergaris, buku folio bergaris kolom, atau file spreadsheet. Isinya sama.
Yang bikin buku stok berguna itu bukan formatnya. Tapi kebiasaan nulisnya pas transaksi terjadi, bukan pas mau tutup buku bulan.
Enam kolom ini yang paling sering kepakai di toko kelontong sampai distributor kecil. Kolom keterangan sering dilewatin, padahal itu yang paling nolong waktu ada selisih.
| Kolom | Isi | Contoh |
|---|---|---|
| Tanggal | Tanggal transaksi, bukan tanggal nyatet | 25/07/2025 |
| Kode barang | Kode pendek dan unik per jenis barang | BRS-5 |
| Nama barang | Nama lengkap plus ukuran atau satuan | Beras Pandan Wangi 5 kg |
| Masuk | Jumlah unit yang datang dari supplier atau retur | 20 |
| Keluar | Jumlah unit yang terjual atau rusak | 7 |
| Sisa | Hasil hitungan, bukan hasil ngitung rak | 43 |
| Keterangan | Sumber atau alasan mutasi | Kiriman CV Sumber Tani |
Kode barang sering dianggap ribet buat toko kecil. Padahal tanpa kode, nama barang bakal ditulis beda-beda tiap orang. Beras Pandan Wangi, Beras PW, sama Beras pandan 5kg bakal kebaca sebagai tiga barang berbeda begitu kamu pindah ke Excel.
Bikin aturan kode yang gampang diingat. Tiga huruf pertama nama barang, tanda hubung, terus ukurannya. BRS-5, MYK-1, GLA-1.
Urutannya kayak gini, dan langkah pertama yang paling sering dilewatin:
Langkah terakhir itu yang misahin buku stok yang kepakai dari buku stok yang cuma jadi pajangan. Selisih yang ketauan seminggu masih bisa dicari sumbernya. Selisih yang ketauan enam bulan kemudian cuma bisa dipasrahin.
Ini contoh isi satu hari di toko sembako, tanggal 25 Juli 2025. Perhatiin gimana kolom sisa nyambung dari baris ke baris buat barang yang sama.
| Tanggal | Kode | Nama barang | Masuk | Keluar | Sisa | Keterangan |
|---|---|---|---|---|---|---|
| 25/07/2025 | BRS-5 | Beras Pandan Wangi 5 kg | 0 | 0 | 30 | Stok awal |
| 25/07/2025 | MYK-1 | Minyak goreng 1 L | 0 | 0 | 48 | Stok awal |
| 25/07/2025 | BRS-5 | Beras Pandan Wangi 5 kg | 20 | 0 | 50 | Kiriman CV Sumber Tani |
| 25/07/2025 | BRS-5 | Beras Pandan Wangi 5 kg | 0 | 7 | 43 | Penjualan pagi |
| 25/07/2025 | MYK-1 | Minyak goreng 1 L | 0 | 12 | 36 | Penjualan pagi |
| 25/07/2025 | MYK-1 | Minyak goreng 1 L | 0 | 2 | 34 | Kemasan bocor, dibuang |
| 25/07/2025 | BRS-5 | Beras Pandan Wangi 5 kg | 0 | 9 | 34 | Penjualan sore |
Baris minyak bocor itu contoh kenapa kolom keterangan penting. Dua unit hilang dari stok tanpa masuk ke omzet. Kalau nggak ditulis alasannya, bulan depan angka itu bakal jadi misteri.
Kesalahan paling umum waktu mindahin buku stok ke Excel: bikin satu tabel besar terus ngitung sisa pakai penjumlahan manual baris per baris. Begitu ada baris disisipin di tengah, semua angka di bawahnya kacau.
Pakai dua sheet. Sheet master buat daftar barang, sheet mutasi buat catatan harian.
Sheet master isinya empat kolom: kode barang di kolom A, nama barang di kolom B, satuan di kolom C, stok awal di kolom D.
Sheet mutasi isinya lima kolom: tanggal di A, kode barang di B, nama barang di C, masuk di D, keluar di E.
Kolom nama barang di sheet mutasi nggak usah diketik manual. Ambil dari master:
=IFERROR(VLOOKUP(B2, master!$A:$B, 2, FALSE), "Kode belum terdaftar")
Kalau kode yang kamu ketik salah, sel-nya langsung ngasih peringatan alih-alih nampilin error N/A yang bikin bingung. Cara kerja fungsi IFERROR emang buat nangkep kasus kayak gini.
Balik ke sheet master, tambahin kolom E buat sisa stok:
=D2 + SUMIF(mutasi!$B:$B, A2, mutasi!$D:$D) - SUMIF(mutasi!$B:$B, A2, mutasi!$E:$E)
Terjemahannya: stok awal, ditambah semua yang masuk buat kode ini, dikurangi semua yang keluar buat kode ini. SUMIF yang ngerjain penjumlahan bersyaratnya, jadi kamu nggak perlu nyortir baris mutasi sama sekali. Sintaks lengkapnya ada di dokumentasi Microsoft.
Mau lihat posisi stok di tanggal tertentu? Ganti SUMIF jadi SUMIFS dengan syarat tambahan tanggal:
=D2 + SUMIFS(mutasi!$D:$D, mutasi!$B:$B, A2, mutasi!$A:$A, "<=" & $H$1)
- SUMIFS(mutasi!$E:$E, mutasi!$B:$B, A2, mutasi!$A:$A, "<=" & $H$1)
Isi sel H1 dengan tanggal yang kamu mau, terus seluruh kolom sisa langsung nunjukin posisi di tanggal itu.
Terakhir, pasang dropdown di kolom kode sheet mutasi lewat Data lalu Data Validation lalu List, sumbernya kolom A di sheet master. Ini yang nyegah salah ketik kode, sumber selisih nomor satu di file stok buatan sendiri.
| Situasi | Buku manual | Excel |
|---|---|---|
| Jenis barang di bawah 30 | Cukup | Boleh, belum perlu |
| Jenis barang di atas 100 | Mulai berat | Jelas menang |
| Yang nyatet lebih dari 1 orang | Rawan bentrok | Menang kalau pakai Sheets |
| Butuh laporan barang terlaris | Harus ngitung manual | Pivot table beberapa detik |
| Listrik dan sinyal nggak stabil | Menang telak | Bermasalah |
| Kasir gaptek | Menang | Butuh pelatihan |
Banyak toko jalanin dua-duanya. Kasir nulis di buku pas transaksi, terus salah satu orang mindahin ke Excel tiap malam. Repot memang, tapi ini yang paling tahan banting waktu listrik mati.
Dataset toko_berkah punya 1.204 baris mutasi stok selama 92 hari, buat 58 jenis barang. Waktu aku cocokin sama hasil hitung fisik akhir bulan, 41 baris punya selisih.
Sebaran penyebabnya kayak gini:
| Penyebab selisih | Jumlah baris | Porsi |
|---|---|---|
| Kode barang salah ketik | 19 | 46% |
| Barang rusak nggak dicatat | 11 | 27% |
| Penjualan sore lupa dicatat | 8 | 20% |
| Retur pelanggan dicatat dobel | 3 | 7% |
Hampir separuh masalahnya salah ketik kode. Itu jenis kesalahan yang bisa hilang total cuma dengan masang dropdown di kolom kode. Nggak butuh sistem mahal, nggak butuh aplikasi kasir baru.
Yang menarik, 8 baris penjualan sore yang lupa dicatat semuanya jatuh di hari Sabtu. Jam sibuk emang bikin pencatatan paling gampang bolong.
Kolom sisa itu hasil hitungan dari baris sebelumnya. Kalau kamu isi pakai angka hasil ngitung fisik, kamu nutupin selisih tanpa sadar dan kehilangan satu-satunya alat buat ngedeteksi kebocoran.
Nulis "keluar 30" buat total penjualan seharian kelihatan hemat tempat. Tapi waktu ada selisih, kamu nggak punya cara buat tau transaksi mana yang bermasalah.
Ini yang bikin file Excel toko jadi kacau. Solusinya kode barang plus dropdown, bukan disiplin ngetik.
Tanpa titik nol yang disepakati, semua angka sisa di bawahnya cuma tebakan. Mulai dengan hitung fisik satu kali, walaupun makan waktu setengah hari.
Buku tulis nggak bisa kena virus, tapi bisa kena banjir. File Excel nggak bisa kena banjir, tapi bisa ilang bareng laptopnya. Simpan salinannya di Google Drive atau OneDrive, otomatis, jangan andelin niat.
Beda susunannya. Buku stok harian disusun per tanggal, jadi satu halaman isinya semua barang yang bergerak hari itu. Kartu stok disusun per barang, jadi satu kartu isinya riwayat satu jenis barang aja. Toko kecil biasanya cukup pakai buku harian. Kalau kamu sering ditanya riwayat satu barang tertentu, kartu stok lebih enak dipakai.
Jangan langsung dihapus catatannya. Tulis baris penyesuaian baru dengan tanggal hari itu, kolom keterangan diisi alasan, misalnya rusak, hilang, atau salah catat. Cara ini bikin selisihnya tetap kelihatan waktu kamu telusuri bulan depan. Kalau angkanya langsung ditimpa, kamu kehilangan jejak buat cari sumber masalahnya.
Buat catatan stok harian, jumlah unit aja udah cukup. Harga baru penting kalau kamu mau ngitung nilai persediaan buat laporan keuangan atau mau tau modal yang nganggur di gudang. Kalau mau ditambahin, taruh harga beli per unit di kolom terpisah, jangan dicampur sama kolom jumlah.
Pas transaksinya terjadi, bukan dikumpulin di akhir hari. Nunda pencatatan sampai tutup toko bikin kamu ngandelin ingatan, dan itu sumber selisih paling umum. Kalau lagi ramai banget, minimal catat tanggal dan jumlahnya dulu di kertas kecil, terus salin ke buku pas jeda.
Bisa, dan rumusnya sama persis kayak di Excel. SUMIF, VLOOKUP, dan IFERROR jalan dengan sintaks yang identik. Keuntungannya, file-nya bisa dibuka bareng kasir dari HP masing-masing tanpa kirim-kirim file. Kekurangannya, sheet dengan puluhan ribu baris mutasi mulai terasa lambat dibanding Excel di komputer.
Tiga hal yang bisa kamu kerjain minggu ini:
Kalau kamu udah siap pindah ke spreadsheet, file jadinya bisa kamu contek dari template stok barang Excel. Buat alur pencatatan masuk keluar yang lebih rinci, lanjut ke panduan pembukuan stok masuk dan keluar.
Mulai dari buku tulis nggak apa-apa. Yang penting barisnya keisi tiap hari.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Punya ratusan angka dan mau tau sebarannya masuk ke rentang mana aja? FREQUENCY ngitung distribusi frekuensi sekali jalan, tanpa nulis COUNTIFS berkali-kali.
SUMIFS ribet kalau kriterianya banyak dan sering ganti. Rumus database Excel kayak DSUM baca kriteria dari sel terpisah, jadi kamu tinggal ubah tabel kecil tanpa nyentuh rumus.
DATEDIF ngasih umur bulat, tapi kadang kamu butuh angka desimal kayak 27,6 tahun buat hitung masa kerja atau bunga. YEARFRAC ngasih pecahan tahun dengan presisi.