TL;DR
Format stok barang yang bisa dianalisis pakai aturan satu baris untuk satu transaksi, bukan satu baris untuk satu barang. Tabel transaksinya butuh sembilan kolom minimum, mulai dari id transaksi sampai keterangan, sementara nama barang dan batas minimum dipisah ke tabel master. Tanggal harus disimpan sebagai tanggal asli dan jumlah selalu ditulis positif dengan arah pergerakan di kolom jenis.
Format stok barang yang bisa dianalisis pakai aturan satu baris untuk satu transaksi, bukan satu baris untuk satu barang.
File stok yang rapi di mata sering jadi mustahil dianalisis. Merge cell, baris total di tengah tabel, tanggal berbentuk teks.
Aku bakal kasih 9 kolom minimum yang bikin datamu siap dipivot, plus cara ngerapiin file yang telanjur kacau tanpa ngetik ulang dari nol.
Format yang bisa dianalisis punya tiga ciri: satu baris mewakili satu kejadian, satu kolom nyimpen satu jenis informasi, dan nggak ada baris atau kolom hiasan di dalam tabel. Di dunia data, susunan ini disebut tabel panjang. Semua alat rekap, dari pivot table sampai Python, ngarepin bentuk ini.
Cirinya gampang dicek. Kalau kamu bisa nambah data cuma dengan nambah baris di bawah tanpa mikir, formatmu udah bener.
Format satu baris satu barang keliatan hemat tempat. Tiap barang punya satu baris, lalu kolom nambah tiap ganti hari: masuk 1 Juli, keluar 1 Juli, masuk 2 Juli, dan seterusnya.
Masalahnya muncul di hari ke-31. Tabelmu punya 62 kolom, rumus rekapmu harus diubah tiap bulan, dan pivot table nggak bisa ngelompokin per minggu.
Dengan satu baris satu transaksi, nambah data cuma nambah baris ke bawah. Rentang rumus nggak berubah, dan kamu bisa motong data per hari, per minggu, per pemasok, atau per kategori tanpa nyusun ulang apa pun.
Bandingin dua bentuk ini:
| Aspek | Satu baris per barang | Satu baris per transaksi |
|---|---|---|
| Nambah data harian | Nambah kolom | Nambah baris |
| Pivot table | Susah, sering gagal | Langsung jalan |
| Rekap per periode | Rumus diubah tiap bulan | Cukup ganti batas tanggal |
| Nyari riwayat satu barang | Baca ke samping | Filter satu kolom |
| Lebar file | Bengkak | Tetap 9 kolom |
Ini susunan yang aku pakai buat toko kecil sampai menengah. Sembilan kolom, nggak lebih sebelum kebutuhannya jelas.
| No | Kolom | Tipe | Contoh | Kenapa perlu |
|---|---|---|---|---|
| 1 | id_transaksi | Teks | TRX-2025-0714-018 | Ngunci tiap baris biar duplikat ketahuan |
| 2 | tanggal | Tanggal | 2025-07-14 | Dasar semua rekap periode |
| 3 | kode_barang | Teks | BRG-021 | Nyambung ke tabel master |
| 4 | jenis | Teks | Keluar | Arah pergerakan barang |
| 5 | jumlah | Angka | 14 | Selalu positif |
| 6 | satuan | Teks | kg | Nyegah salah jumlah antar kemasan |
| 7 | harga_satuan | Angka | 16500 | Buat ngitung nilai stok |
| 8 | lokasi | Teks | Depok | Misahin stok antar cabang atau gudang |
| 9 | keterangan | Teks | Penjualan | Bedain terjual, rusak, retur, kepakai sendiri |
Kolom keterangan sering dianggap remeh, padahal dia yang jawab kenapa stok berkurang tanpa ada penjualan. Isinya dibatesin lewat dropdown, jangan diketik bebas.
Kalau tokomu punya lebih dari satu orang yang nyatet, tambah kolom kesepuluh berisi nama petugas. Itu yang bikin selisih bisa ditelusuri.
Nama barang jangan ditulis di tiap baris transaksi. Cukup kode barangnya, lalu nama ditarik dari tabel master.
Alasannya: kalau nama ditulis manual 1.400 kali, kamu bakal punya tujuh ejaan buat barang yang sama. Minyak Goreng 2L, minyak goreng 2 liter, MG 2L, dan seterusnya.
| Kolom di tabel master | Contoh |
|---|---|
| kode_barang | BRG-021 |
| nama_barang | Gula pasir 1kg |
| kategori | Sembako |
| satuan_dasar | pcs |
| batas_minimum | 10 |
| pemasok | CV Sinar Jaya |
Aturan pemisahannya sederhana: informasi yang nggak berubah tiap transaksi taruh di master. Informasi yang berubah tiap kejadian taruh di tabel transaksi.
Ini bagian yang paling sering bikin rumus rekap gagal padahal datanya lengkap.
| Tipe | Aturan | Tanda ada masalah |
|---|---|---|
| Tanggal | Simpan sebagai tanggal asli | Isinya nempel di kiri sel |
| Angka | Tanpa titik ribuan manual, tanpa teks Rp | SUM ngasih hasil nol |
| Teks | Satu ejaan, tanpa spasi ekstra | Filter nampilin dua pilihan yang keliatan sama |
| Kode | Panjang seragam, tanpa spasi | VLOOKUP ngasih error walau kodenya ada |
| Kosong | Biarkan kosong, jangan tulis strip | Rata-rata dan jumlah jadi salah |
Buat angka rupiah, simpen angkanya polos lalu atur tampilannya lewat format sel. Nulis Rp langsung di dalam sel bikin isinya jadi teks. Kalau kamu butuh nampilin tanggal dalam bentuk teks buat judul laporan, itu tugas fungsi TEXT, bukan cara nyimpen datanya.
Spasi ekstra di ujung nama adalah penyebab error lookup nomor satu. Bersihin pakai rumus TRIM Excel sebelum data dipakai.
Jangan ketik ulang. Tujuh langkah ini biasanya cukup, dan kerjakan berurutan.
Setelah tujuh langkah ini, rekap harian dan mingguan bisa langsung dibangun. Caranya ada di laporan stok barang.
Toko_berkah punya file stok setahun berisi 1.412 baris transaksi. Kelihatannya rapi: ada garis tabel, warna per kategori, dan subtotal per bulan.
Begitu dicoba dipivot, hasilnya kacau. Ini yang ketemu pas dicek satu-satu.
| Masalah | Jumlah | Akibat |
|---|---|---|
| Tanggal kesimpan sebagai teks | 217 baris | Rekap per bulan bolong |
| Nama barang beda ejaan | 7 versi buat 3 barang | Satu barang kehitung tiga barang |
| Baris subtotal di dalam tabel | 12 baris | Total kehitung dobel |
| Sel dengan spasi ekstra | 84 sel | Lookup gagal |
| Angka jumlah ditulis minus | 139 baris | Arah pergerakan campur aduk |
Angka yang paling mahal ada di baris kedua. Tiga barang yang ketulis tujuh versi bikin laporan penjualan setahun salah baca. Gula pasir 1kg keliatan cuma laku 96 unit, padahal setelah digabung angkanya 341 unit.
Akibatnya batas minimum gula diset kekecilan selama berbulan-bulan, dan itu penyebab utama dari 11 kejadian barang kosong di Juli.
Ngerapiinnya makan waktu 2 jam sekali kerja. Setelah itu, rekap bulanan yang tadinya dikerjain 90 menit tiap akhir bulan turun jadi 6 menit lewat pivot table.
1. Merge cell di area data. Filter, sort, dan pivot table langsung rusak. Merge cuma boleh di kepala laporan, di luar tabel.
2. Judul kolom lebih dari satu baris. Pivot table cuma baca satu baris judul. Gabung jadi satu baris, misalnya harga_satuan.
3. Warna sebagai penanda status. Warna nggak bisa dihitung rumus. Kalau statusnya penting, bikin kolom sendiri.
4. Baris kosong sebagai pemisah bulan. Excel nganggap tabelmu berhenti di situ. Pakai kolom bulan kalau perlu.
5. Satu file per bulan tanpa struktur sama. Kalau urutan kolomnya beda tiap file, gabungin dua belas file jadi kerjaan seharian.
6. Kode barang berubah pas nama barang berubah. Riwayat penjualannya jadi putus. Kode itu permanen, nama boleh diperbarui.
7. Nulis satuan di kolom jumlah. Isi 14 kg bikin kolomnya jadi teks. Angka dan satuan pisah kolom.
Sembilan kolom di tabel transaksi: id transaksi, tanggal, kode barang, jenis, jumlah, satuan, harga satuan, lokasi, dan keterangan. Nama barang, kategori, dan batas minimum jangan ditaruh di sini, pisahin ke tabel master yang disambung lewat kode barang. Pemisahan itu yang bikin datamu nggak bengkak dan nama barang nggak ketulis beda-beda di tiap baris.
Karena format satu baris satu barang maksa kamu nambah kolom tiap ganti hari, dan itu bikin pivot table sama rumus rekap nggak jalan. Dengan satu baris satu transaksi, nambah data cuma nambah baris ke bawah. Rentang rumusmu nggak perlu diubah, dan kamu bisa motong data dari sisi mana pun tanpa nyusun ulang tabelnya.
Simpan sebagai tanggal asli, bukan teks. Cara ngeceknya gampang: klik selnya, kalau isinya nempel di kanan berarti udah tanggal, kalau nempel di kiri berarti masih teks. Tanggal berbentuk teks bikin rumus dengan batas periode langsung gagal dan pivot table nggak bisa ngelompokin per bulan. Tampilannya boleh diatur sesukamu lewat format sel.
Sebaiknya jangan. Simpan jumlah selalu positif dan taruh arah pergerakannya di kolom jenis, isinya Masuk atau Keluar. Kalau kamu campur angka minus dan positif, rumus rekapmu jadi berlapis dan gampang salah. Kalau nanti butuh angka bersih, tinggal kurangin total Keluar dari total Masuk pakai dua rumus SUMIFS.
Salin dulu file aslinya sebagai cadangan. Lalu kerjakan berurutan: hapus merge cell, pisah baris total keluar dari tabel, ubah kolom tanggal jadi tanggal asli, rapikan nama barang jadi satu ejaan, dan terakhir bikin kode barang unik. Kerjakan satu kolom sampai selesai sebelum pindah, karena ngerjain semuanya sekaligus bikin kamu kehilangan jejak perubahan.
Tiga hal yang nentuin datamu bisa dianalisis atau nggak: satu baris satu transaksi, tanggal disimpan sebagai tanggal, dan nama barang dipisah ke tabel master.
Buka file stokmu, klik satu sel di kolom tanggal, dan lihat isinya nempel di kiri atau kanan. Kalau di kiri, itu pekerjaan pertamamu hari ini.
Setelah formatnya beres, susun rekapnya lewat laporan stok barang. Rumus rekapnya pakai fungsi SUMIFS, dan referensi resmi format datanya ada di dokumentasi Microsoft Excel.
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.