「在庫数をExcelへ直接入力しているが、いつ増減したのか分からない」
「在庫が合わないときに、原因を調べるのに時間がかかる」
「誰が何個出庫したのか履歴を残したい」
「入庫・出庫・返品・棚卸調整をExcelで一元管理したい」
このような場合は、Excelで入出庫履歴を記録する仕組みを作ることで改善できる可能性があります。
在庫管理でありがちなのが、商品ごとの現在在庫を直接書き換える方法です。
例えば、
商品A
現在在庫 100
の商品を20個出庫したとき、
商品A
現在在庫 80
へ書き換えます。
現在の数量だけを確認するなら簡単ですが、この方法では、
- いつ20個減ったのか
- 誰が出庫したのか
- 何のために出庫したのか
- 本当に20個だったのか
が分かりません。
在庫管理では、現在在庫だけでなく、
在庫がどのように増減したのか
を履歴として残すことが重要です。
そこで、
入庫 +100
出庫 -20
返品 +5
棚卸調整 -2
のような入出庫履歴を記録し、その結果から現在在庫を計算します。
この記事では、Excelで入出庫履歴を管理する方法、必要な項目、在庫数の自動計算、よくあるミス、複数人で運用する際の注意点を解説します。
入出庫履歴とは
入出庫履歴とは、商品や資材の在庫が増減した記録です。
例えば商品Aについて、次のような動きがあったとします。
7/1
100個入庫
7/3
20個出庫
7/5
10個出庫
7/8
5個返品
この場合、現在在庫は、
100
- 20
- 10
+ 5
= 75個
です。
単純に、
現在在庫 75個
だけ保存するのではなく、
75個になった経緯を残す
のが入出庫履歴管理です。
入出庫履歴を残すメリット
在庫数が合わない原因を調べられる
例えばシステム上の在庫が80個なのに、実際には78個しかなかったとします。
履歴があれば、
7/20 入庫 +50
7/21 出庫 -10
7/22 出庫 -20
7/23 返品 +5
などを確認できます。
その結果、
「7/22の出庫数量が実際は22個だった」
といった原因を調べられる可能性があります。
誰が在庫を動かしたか分かる
履歴に担当者を残せば、
7/29 10:15
商品A
出庫 20個
担当:田中
と確認できます。
複数人で在庫を扱う場合には特に重要です。
過去の在庫の動きを分析できる
入出庫履歴を蓄積すると、
- 月間出庫数
- 商品別販売数
- 入庫頻度
- 担当者別処理件数
- 返品件数
なども集計できます。
単なる在庫確認だけでなく、発注や業務改善にも利用できます。
棚卸し差異の確認に使える
棚卸しで差異が発生した際にも、
帳簿在庫
100
実在庫
97
差異
-3
だけでは原因が分かりません。
入出庫履歴を確認することで、記録漏れがなかったか調査できます。
Excelで入出庫履歴を管理する基本構成
Excelで管理するなら、大きく次の3つに分ける方法があります。
商品マスター
入出庫履歴
在庫一覧
商品マスター
商品そのものの情報を管理します。
例えば、
| 商品コード | 商品名 | カテゴリ | 保管場所 | 発注点 |
|---|---|---|---|---|
| A001 | 商品A | 部品 | A棚 | 20 |
| A002 | 商品B | 部品 | B棚 | 30 |
商品名を毎回自由入力するのではなく、商品コードを基準に管理します。
入出庫履歴
在庫が動くたびに1行追加します。
例えば、
| 日時 | 商品コード | 区分 | 数量 | 担当者 | 備考 |
|---|---|---|---|---|---|
| 7/29 09:00 | A001 | 入庫 | 100 | 田中 | 仕入 |
| 7/29 11:00 | A001 | 出庫 | 20 | 鈴木 | 注文1001 |
| 7/29 15:00 | A001 | 返品 | 5 | 佐藤 | 顧客返品 |
重要なのは、
履歴を上書きするのではなく、新しい行として追加すること
です。
在庫一覧
入出庫履歴を集計し、商品ごとの現在在庫を表示します。
例えば、
| 商品コード | 商品名 | 現在在庫 | 発注点 | 状態 |
|---|---|---|---|---|
| A001 | 商品A | 85 | 20 | 正常 |
| A002 | 商品B | 15 | 30 | 要発注 |
担当者は、この一覧から現在在庫を確認します。
入出庫履歴に必要な項目
日時
在庫が動いた日時です。
例えば、
2026/07/29 10:32
まで記録します。
日単位だけで十分な業務なら日付のみでも構いません。
複数回入出庫する場合は、時刻まで残した方が追跡しやすくなります。
商品コード
商品を一意に識別する番号です。
例えば、
A001
A002
A003
です。
商品名だけで管理すると、名称変更や表記ゆれの影響を受けます。
商品名
確認しやすいよう表示します。
ただし、商品コードを選択したら商品名を自動表示する方が安全です。
入出庫区分
例えば、
入庫
出庫
返品
棚卸調整
倉庫移動
廃棄
などです。
自由入力にせず、プルダウンから選択する方法がおすすめです。
数量
在庫が動いた数量です。
例えば、
20
と入力します。
担当者
誰が処理したのか記録します。
複数人運用では重要な項目です。
備考
必要に応じて、
注文番号
仕入番号
返品理由
棚卸調整理由
などを記録します。
入庫と出庫をプラス・マイナスで管理する方法
在庫を計算しやすくする方法の一つが、数量を符号付きで持つことです。
例えば、
| 区分 | 数量 |
|---|---|
| 入庫 | +100 |
| 出庫 | -20 |
| 返品 | +5 |
| 廃棄 | -2 |
とします。
合計すると、
100 - 20 + 5 - 2
= 83
となります。
この83が現在在庫です。
入庫数量・出庫数量を別列にする方法
もう一つは、
入庫数量
出庫数量
を分ける方法です。
例えば、
| 商品 | 入庫 | 出庫 |
|---|---|---|
| 商品A | 100 | 0 |
| 商品A | 0 | 20 |
| 商品A | 5 | 0 |
現在在庫は、
入庫合計 - 出庫合計
で計算します。
Excelに慣れていない担当者が利用する場合は、こちらの方が分かりやすいこともあります。
どちらの方式がよい?
どちらでも管理できます。
重要なのは、
入力方法を統一すること
です。
途中から、
出庫をマイナスで入力する人
出庫列へプラスで入力する人
が混在すると、正しく集計できません。
Excelで現在在庫を自動計算する
入出庫履歴を記録したら、現在在庫は手入力しないようにします。
例えば、
商品A
入庫合計
150
出庫合計
70
現在在庫
80
と自動計算します。
SUMIFSなどを利用できます。
考え方としては、
商品コードがA001の入庫数量を合計
-
商品コードがA001の出庫数量を合計
です。
初期在庫をどう扱う?
運用開始時にすでに在庫がある場合があります。
例えば、
システム開始日
2026/08/01
商品A
現在在庫 100
だったとします。
この100個を、
初期在庫 +100
という履歴として登録します。
その後は、
初期在庫 +100
出庫 -20
入庫 +50
と履歴を積み重ねます。
これにより、開始時点から現在までの流れを確認できます。
返品はどう管理する?
返品には複数パターンがあります。
顧客から商品が戻ってきた
在庫が増えるので、
返品入庫 +5
などとして記録します。
仕入先へ商品を返品した
在庫が減るので、
仕入返品 -5
などとして記録します。
単純に「返品」とすると増減方向が分からなくなるため、区分を整理しておく方が安全です。
棚卸し差異はどう管理する?
例えば、
帳簿在庫
100
実在庫
98
だったとします。
この場合、現在在庫を直接、
100 → 98
へ書き換えるのではなく、
棚卸調整 -2
という履歴を追加します。
すると、
元在庫 100
棚卸調整 -2
現在在庫 98
という経緯が残ります。
棚卸調整には理由を残す
例えば、
区分
棚卸調整
数量
-2
理由
破損品を未処理だったため
と記録します。
差異原因を後から分析できます。
廃棄も履歴として管理する
破損や期限切れによって商品を廃棄する場合も、
廃棄 -10
として在庫履歴へ記録します。
「いつの間にか在庫が減っていた」という状態を防ぎます。
倉庫間移動をどう管理する?
例えば、
千葉倉庫
↓
東京倉庫
商品A
20個
を移動するとします。
この場合、
千葉倉庫
移動出庫 -20
と、
東京倉庫
移動入庫 +20
の両方が必要です。
一方だけ記録すると、全体在庫が増減してしまいます。
複数拠点の場合は保管場所を持たせる
例えば履歴を、
| 日時 | 商品 | 倉庫 | 区分 | 数量 |
|---|---|---|---|---|
| 7/29 | A001 | 千葉 | 入庫 | 100 |
| 7/29 | A001 | 千葉 | 出庫 | 20 |
| 7/29 | A001 | 東京 | 入庫 | 50 |
とします。
すると、
商品A
千葉倉庫
80個
東京倉庫
50個
全体
130個
と集計できます。
ロット単位で管理する場合
食品や製造業などでは、同じ商品でもロットごとに管理する場合があります。
例えば、
商品A
LOT20260701
50個
商品A
LOT20260715
80個
です。
入出庫履歴にも、
商品コード
ロット番号
数量
を持たせます。
使用期限・賞味期限を管理する場合
ロットと合わせて、
使用期限
賞味期限
消費期限
などを管理することもできます。
ただし、Excelの構造が複雑になりやすいため、ロット数や入出庫件数が多い場合は専用システムの方が管理しやすくなります。
入出庫履歴から発注点を確認する
商品マスターに発注点を設定します。
例えば、
商品A
現在在庫
18
発注点
20
なら、
要発注
と表示します。
Excelの条件付き書式を使って赤く表示することもできます。
発注点以下の商品だけ抽出する
例えば、
現在在庫 <= 発注点
の商品だけフィルターします。
購買担当者が確認する対象を絞れます。
入出庫履歴を月別に集計する
履歴が蓄積されれば、
7月入庫
500個
7月出庫
420個
のような集計もできます。
商品別に集計する
例えば、
| 商品 | 入庫 | 出庫 |
|---|---|---|
| 商品A | 500 | 420 |
| 商品B | 300 | 290 |
| 商品C | 100 | 40 |
と表示できます。
動きの多い商品を把握できます。
担当者別に集計する
例えば、
田中
入出庫処理 120件
鈴木
入出庫処理 95件
なども確認できます。
目的がなければ無理に集計する必要はありませんが、業務量の確認には利用できます。
Excelで入出庫履歴を管理するときの入力ミス対策
商品コードを手入力しない
商品マスターから選択します。
商品コードを手入力すると、
A00125
を、
A00152
と入力する可能性があります。
区分をプルダウンにする
例えば、
入庫
出庫
返品入庫
仕入返品
棚卸調整
廃棄
から選択します。
数量を数値だけにする
10個
ではなく、
10
だけ入力するようにします。
単位は別途表示します。
0以下を禁止する
数量のプラス・マイナスを区分側で管理する場合は、入力数量そのものは、
1以上
に制限します。
必須項目をチェックする
最低限、
- 商品
- 区分
- 数量
- 担当者
などを必須にします。
在庫を直接変更させない
現在在庫のセルは計算結果とし、入力担当者が編集できないようにします。
これが重要です。
在庫がマイナスになる場合
例えば、
現在在庫
5
出庫
10
を登録すると、
現在在庫
-5
になります。
この処理を許可するか決める必要があります。
マイナス在庫を禁止する
出庫時に、
出庫数量 > 現在在庫
ならエラーにします。
ExcelではVBAなどを利用してチェックできます。
マイナス在庫を許可する場合
実務上、
- 入庫入力が後になる
- 受注を先に登録する
- 仮在庫を扱う
などの理由から、マイナスを許容するケースもあります。
業務ルールに合わせて決めます。
Excelで複数人が入出庫履歴を入力する場合
一つのExcelを複数人が利用すると、
- 同時編集
- 行の削除
- 数式変更
- ファイルコピー
などの問題が発生する可能性があります。
OneDrive・SharePointを利用する
Microsoft 365環境なら、同じExcelを共有する方法があります。
ファイルをメール添付して回すよりは管理しやすくなります。
Googleスプレッドシートを利用する
小規模であれば、入出庫履歴をGoogleスプレッドシートへ移行する方法もあります。
複数人で同時編集しやすくなります。
Googleフォームから入力する
担当者に履歴表そのものを編集させず、
商品
区分
数量
担当者
をフォームから登録する方法があります。
例えば、
Googleフォーム
↓
スプレッドシート
↓
入出庫履歴
という仕組みです。
元の表を壊されるリスクを減らせます。
バーコードで商品を入力する
商品数が多い場合は、商品コードの代わりにバーコードを利用できます。
例えば、
バーコードをスキャン
↓
商品Aを表示
↓
出庫
↓
数量20
↓
登録
という流れです。
商品検索や商品コード入力の負担を減らせます。
Excelで入出庫履歴を管理する限界
次のような状態になると、Excelでの運用が複雑になります。
- 入出庫回数が多い
- 利用者が多い
- 複数拠点で使う
- リアルタイム在庫が必要
- バーコードを利用したい
- ロット管理が必要
- 権限管理が必要
- 誰が操作したか確実に残したい
- 他システムと在庫連携したい
この場合は、Webシステムを検討できます。
入出庫履歴をWebシステム化するとどうなる?
例えば、利用者がログインします。
ログイン
↓
商品検索
↓
入庫または出庫
↓
数量入力
↓
登録
という操作です。
入庫画面
例えば、
商品
商品A
数量
100
入庫理由
仕入
[登録]
とします。
出庫画面
商品
商品A
現在在庫
80
出庫数量
20
[出庫]
とします。
登録と同時に履歴を保存する
例えば、
2026/07/29 10:30
ユーザー:田中
商品A
出庫
20個
と自動記録します。
担当者を毎回手入力する必要もありません。
在庫一覧へ即時反映する
出庫登録後、
80
↓
60
と在庫一覧へ反映できます。
複数人が同じ最新在庫を確認できます。
在庫数以上の出庫を防止する
例えば、
現在在庫
10
出庫数量
20
なら、
在庫数を超えています
とエラーを表示できます。
権限を分ける
例えば、
営業
在庫閲覧のみ
倉庫担当
入庫・出庫
管理者
入庫・出庫・棚卸調整・商品編集
という設定ができます。
入出庫履歴を検索する
例えば、
商品
A001
期間
7/1〜7/31
区分
出庫
などで絞り込めます。
CSV出力する
入出庫履歴をCSVへ出力し、Excelで分析できます。
Webシステム化してもExcelを完全になくす必要はありません。
正しい在庫データ
→ Webシステム
追加分析
→ Excel
という使い分けができます。
ExcelとWebシステムの入出庫管理を比較
| 項目 | Excel | Webシステム |
|---|---|---|
| 初期費用 | 低い | 開発費用が必要 |
| 少人数利用 | 向いている | 対応可能 |
| 入出庫履歴 | 管理可能 | 管理しやすい |
| 複数人利用 | 工夫が必要 | 向いている |
| 在庫自動計算 | 可能 | 対応可能 |
| マイナス在庫防止 | 工夫が必要 | 実装しやすい |
| 権限管理 | 限定的 | 詳細設定可能 |
| 操作履歴 | 限定的 | 自動記録可能 |
| バーコード | 工夫が必要 | 組み込みやすい |
| 複数拠点 | 複雑になりやすい | 管理しやすい |
ExcelからWeb化する判断基準
次の項目が複数当てはまる場合は、システム化を検討できます。
- 毎日の入出庫件数が多い
- 複数人が在庫を更新する
- Excel上の在庫と実在庫がよくずれる
- 複数倉庫を管理する
- スマートフォンから登録したい
- バーコードを利用したい
- 商品ごとの履歴をすぐ確認したい
- 在庫不足を自動通知したい
- 入出庫できる人を限定したい
- APIで他システムと連携したい
ただし、小規模な在庫管理であれば、Excelの設計を改善するだけでも十分です。
入出庫履歴管理で失敗しやすいケース
現在在庫を直接上書きする
最も避けたい運用です。
履歴が残りません。
過去の履歴を修正する
例えば過去の出庫20個を、
20 → 10
へ単純に変更すると、変更した事実が分からなくなります。
重要な運用では、訂正履歴を追加する方法も検討します。
商品名を自由入力する
表記ゆれによって別の商品として集計される可能性があります。
出庫数量をマイナス入力する人とプラス入力する人が混在する
運用ルールを統一します。
棚卸し差異を直接在庫数へ反映する
棚卸調整として履歴を残します。
倉庫移動の片側だけ記録する
移動元と移動先の両方へ記録します。
Excelファイルを担当者ごとに分ける
履歴が複数ファイルへ分散し、正しい在庫を確認できなくなります。
入出庫履歴から分かること
履歴を蓄積すると、単なる現在在庫以外にも情報を活用できます。
例えば、
商品A
月平均出庫 100個
なら、発注量を考える材料になります。
また、
商品B
返品が多い
という傾向も把握できます。
入出庫履歴は、在庫数を計算するだけのデータではありません。
在庫管理で重要なのは「現在値」と「履歴」を分けること
在庫管理では、
現在在庫
80個
だけを見るのではなく、
どうして80個なのか
を確認できる状態が重要です。
例えば、
初期在庫 +100
入庫 +50
出庫 -40
返品 +5
廃棄 -10
棚卸調整 -25
----------------
現在在庫 80
という形です。
この履歴が残っていれば、在庫差異が発生した際にも調査しやすくなります。
hiro-dev-labのExcel入出庫管理・在庫管理支援
hiro-dev-labでは、中小企業向けに、Excelで行っている入出庫管理の整理・自動化・Web化に対応しています。
対応内容の例は次のとおりです。
- 商品マスターの整理
- Excel入出庫履歴表の作成
- 入庫・出庫・返品管理
- 現在在庫の自動計算
- 棚卸調整
- 複数倉庫管理
- 発注点管理
- 在庫不足の表示
- 複数Excelの統合
- Googleスプレッドシートへの移行
- GASによる通知
- CSV入出力
- Web在庫管理画面
- 入庫・出庫画面
- 操作履歴
- 権限管理
- バーコード入力
最初から専用システムを導入する必要はありません。
例えば、
現在
Excelの現在在庫を直接変更
第1段階
入出庫履歴方式へ変更
第2段階
在庫数を自動計算
第3段階
共有方法・入力方法を改善
第4段階
必要ならWebシステム化
という段階的な改善ができます。
Excelで十分な規模なら、現在の環境を活用します。
一方、
- 複数人で頻繁に入出庫する
- 在庫ズレが多い
- バーコードを使いたい
- 複数倉庫がある
- リアルタイムで在庫を共有したい
場合は、Webシステム化を検討できます。
千葉市内では、必要に応じて対面で現在のExcelや入出庫業務を確認できます。
オンラインであれば、千葉県内・全国から相談可能です。
Excelの入出庫履歴に関するよくある質問
Excelで入出庫履歴を管理できますか?
商品コード、日時、区分、数量、担当者などを一行ずつ記録することで管理できます。
現在在庫を自動計算できますか?
入庫数量と出庫数量を集計して自動計算できます。
在庫数は直接書き換えない方がよいですか?
履歴を確認する必要がある場合は、入出庫を記録して現在在庫を計算する方法がおすすめです。
返品も管理できますか?
顧客返品や仕入返品など、在庫が増減する方向に合わせて記録できます。
棚卸し差異も履歴にできますか?
「棚卸調整」として数量と理由を記録できます。
複数倉庫を管理できますか?
履歴に倉庫・拠点情報を持たせることで管理できます。
商品ごとの過去履歴を確認できますか?
商品コードで絞り込み、入庫・出庫の履歴を確認できます。
バーコードから入出庫できますか?
バーコードリーダーやスマートフォンを利用した仕組みを検討できます。
複数人で利用できますか?
OneDriveやGoogleスプレッドシートを利用する方法があります。
頻繁な同時利用ではWebシステムも検討できます。
Excelのデータを在庫管理システムへ移せますか?
商品マスターや現在在庫、入出庫履歴を整理したうえで移行できます。
現在在庫だけをExcelで管理している方へ
在庫管理で重要なのは、
今何個あるか
だけではありません。
本当に必要なのは、
なぜその在庫数になっているのか
まで確認できることです。
現在在庫を直接書き換える方式では、過去の動きを確認できません。
まずは、
現在在庫を直接変更
する管理から、
入庫
出庫
返品
棚卸調整
↓
すべて履歴として記録
↓
現在在庫を自動計算
する方式へ変えるだけでも、在庫管理の精度を高められます。
さらに利用人数や入出庫件数が増えた場合は、
Excel
↓
共有スプレッドシート
↓
Web在庫管理システム
と段階的に移行できます。
hiro-dev-labでは、現在の在庫表と入出庫業務を確認し、
Excel改善・GASによる自動化・Webシステム化の中から、業務規模に合った入出庫管理方法を提案・実装します。
Excelの入出庫履歴・在庫管理について相談する