在庫管理

AppSheetで在庫管理アプリを作る方法|テンプレート・バーコード・限界

AppSheetで在庫管理アプリを作ると、スマートフォンやブラウザから入出庫を登録し、現在庫や棚卸しの状況を同じデータから確認できます。紙の台帳や担当者ごとの表計算を減らし、現場で入力した内容を事務所でも確認したい企業にとって、検討しやすい選択肢です。既存の表を利用して試作できるため、業務の流れを小さく見直したい場合にも向いています。

公開日:2026年9月25日 更新日:2026年9月25日
AppSheetで在庫管理アプリを作る方法|テンプレート・バーコード・限界
目次

ただし、AppSheetを導入すれば自動的に正確な在庫になるわけではありません。商品コード、拠点、入出庫区分、棚卸し差異、利用者の権限を先に決めておかないと、入力画面ができても数字の意味がそろいません。テンプレートやバーコード機能を使うときも、現場の作業とデータの更新を一つの流れとして設計する必要があります。

この記事では、AppSheetで在庫管理アプリを作る基本手順、テンプレートを使うときの確認点、バーコードで入出庫を登録する考え方、複数人利用やオフライン時に起きる問題を解説します。小規模な運用に合うケースと、専門的な在庫管理システムや個別開発を検討したほうがよいケースを分けて判断できるように整理します。

この記事で分かること

  • AppSheetを在庫管理に使うときの仕組みと、最初に決めるデータ項目
  • 在庫管理テンプレートをコピーして自社の業務へ合わせる手順
  • バーコードを読み取り、入庫・出庫・棚卸しへつなげる方法
  • 商品マスタ、入出庫履歴、拠点、利用者を分けて管理する理由
  • 入力規則、権限、履歴、同期を設計するときの確認ポイント
  • AppSheetの運用で起きやすい限界と、別の方法へ切り替える判断基準
  • 試作から現場展開までを段階的に進めるチェック項目

AppSheetを在庫管理に使う仕組み

AppSheetは、表計算やデータベースなどに保存した情報をもとに、入力画面、一覧、詳細画面、集計画面を組み立てるサービスです。スマートフォンで入庫を登録し、パソコンで在庫一覧を確認するように、同じデータを役割に応じた画面で扱えます。画面を作ること自体は比較的始めやすい一方、どの行を追加し、どの値を計算し、誰に見せるかは設計者が決めなければなりません。

在庫管理では、商品を一行ずつ並べた表だけでなく、在庫が変化した事実を履歴として残します。現在庫の数値を担当者が直接書き換えると、なぜ増減したのかを後から確認できません。商品マスタと入出庫履歴を分け、入庫、出庫、移動、返品、棚卸し調整などの取引を一行ずつ記録すれば、履歴から現在の状態を計算できます。

AppSheetを使う場合も、この基本は変わりません。アプリの画面は見た目を整える場所であり、在庫の正しさを決めるのはデータ構造と業務ルールです。例えば「出庫」ボタンを押したときに、商品、数量、拠点、担当者、日時を履歴へ保存し、同じ商品と拠点の残数を集計する構成を考えます。ボタンだけで残数を減らす構成にすると、通信エラーや二重操作が起きたときに原因を追いにくくなります。

AppSheetが向いている業務

AppSheetは、現場で使う入力項目がある程度決まっており、少人数または限られた拠点から試したい業務で使いやすい傾向があります。入荷時に商品と数量を登録する、棚卸しで実数を入力する、保管場所を検索する、発注点を下回った商品を一覧にする、といった流れは、必要なデータを整理すればアプリに落とし込めます。

既に表計算で商品一覧や入出庫表を管理している場合は、今ある項目を確認しながら試作できます。ただし、表計算の列名をそのまま画面へ出すのではなく、現場がどの順番で作業するかを確認します。作業者が商品を探し、数量を入力し、登録結果を確認するまでの時間が長いなら、項目を減らした専用画面を用意するほうが定着しやすくなります。

在庫管理専用システムとの違い

在庫管理専用システムには、入出庫、棚卸し、発注、ロット、期限、倉庫、帳票などの機能があらかじめ用意されている場合があります。AppSheetは業務に合わせて画面や計算を組み立てられる反面、自社に必要な機能を一つずつ設計し、変更後の動作を確認しなければなりません。導入の早さだけでなく、毎日の保守を誰が担当するかまで含めて比較します。

複数拠点の在庫を一元化したい、外部の販売・会計・購買システムと連携したい、ロットや期限を厳密に追いたいといった要件がある場合は、最初から専用システムや個別開発を含めて考えます。在庫管理システムの相談では、現在の作業と必要な機能を整理し、AppSheetを含む方法を比較できます。

AppSheetの在庫管理アプリで商品マスタと入出庫履歴を確認する画面イメージ

テンプレートを使って在庫管理アプリを作る手順

AppSheetのテンプレートは、アプリの画面構成やデータの例を理解する出発点として利用します。テンプレートをコピーしてすぐ本番運用するのではなく、まずサンプルのテーブル、列、計算、アクション、ビューがどのようにつながっているかを確認します。画面に表示される項目と、データソースへ保存される項目は同じとは限らないためです。

テンプレートをコピーした直後に確認すること

最初に、商品、在庫、取引、利用者などのテーブルを一覧にします。各テーブルで一行を何として扱うかを定義し、同じ商品を識別するキーが重複しないかを確認します。テンプレートに入っているサンプル商品やサンプル取引は、実データと混ざらないように分けておきます。サンプル行を削除する前に、どの画面や式が参照しているかを確認すると、表示が急に空になる問題を防げます。

次に、列の型を確認します。商品コードを文字列として扱うのか、数量を数値として扱うのか、入出庫日時を日付時刻として保存するのかで、検索や集計の結果が変わります。先頭のゼロを含むコードを数値にすると、表示時にゼロが消えることがあります。単位、金額、日付、選択肢、画像なども、入力する値の意味に合う型へ整えます。

最後に、テンプレートに含まれる自動計算やボタンを確認します。現在庫を仮の値から計算している場合、自社の入庫・出庫区分と一致するかを調べます。不要なボタンは表示したままにせず、誤操作の原因にならないように非表示または権限制御を検討します。変更した箇所を一覧にしておくと、後でテンプレートの更新や不具合調査を行いやすくなります。

自社向けに置き換える項目

テンプレートを業務へ合わせるときは、商品名やロゴだけを変えて終わりにしません。商品コードの付け方、拠点や棚の表現、在庫区分、発注点、棚卸しの締め方を置き換えます。商品コードが社内の既存コードと異なる場合は、別名や外部コードを持つ列を追加し、どのコードを連携に使うかを決めます。

入出庫区分は、現場が迷わない数へ絞ります。「入庫」「出庫」「移動」「返品」「棚卸し調整」など、後から在庫の変化を説明できる区分を用意します。移動を出庫と入庫の二つの行に分けるなら、同じ伝票番号で結びます。移動元だけを減らして移動先を増やし忘れると、全体の在庫が変わってしまうためです。

テンプレートから本番へ移す前の試験

試験では、正常な登録だけでなく、数量を空欄にする、存在しない商品を選ぶ、同じボタンを続けて押す、通信が途切れた後に再同期する、といった操作も確認します。履歴が一行だけ作られるか、現在庫の計算が二重にならないか、エラーが利用者に分かる形で表示されるかを確認します。

実際の利用者に近い人で試すことも重要です。管理者が使える画面でも、倉庫の作業者が手袋をした状態で操作しにくい、文字が小さく商品を探しにくい、登録完了が分からないということがあります。短い作業を繰り返してもらい、入力時間、間違えた箇所、戻る操作の回数を記録して画面を調整します。

商品マスタと入出庫履歴を設計する

在庫管理アプリの基礎は、商品マスタと入出庫履歴です。商品マスタには、商品コード、商品名、規格、単位、保管場所、発注点、利用停止の状態などを持たせます。履歴には、取引ID、日時、区分、商品コード、数量、拠点、担当者、備考を保存します。商品名を履歴へ直接入力するのではなく、商品コードを選んで名前を参照表示する構成にすると、表記ゆれを減らせます。

商品を廃止するときは、マスタの行を削除する方法を避けます。過去の履歴が参照できなくなったり、集計対象から消えたりすることがあるためです。利用停止のフラグを持たせ、新しい入出庫では選べないようにしながら、過去の取引では商品名を確認できる状態を保ちます。

数量の単位も先に決めます。仕入れは箱、出荷は個というように単位が異なる場合は、基準単位と換算数を持たせます。画面で箱数を入力するのか、個数へ換算した数量を保存するのかを統一し、履歴に入力値と換算後の値を残すかも決めます。暗算で変換すると、棚卸しの差異が入力ミスなのか実際の差なのか判別しにくくなります。

現在庫を直接書き換えない

在庫一覧の現在庫を直接編集できるようにすると、履歴と現在庫の数字が食い違いやすくなります。棚卸しで実数に合わせる場合も、調整前の帳簿数量、実棚数量、差異、理由、承認者を履歴へ残します。調整ボタンで差異分の取引を追加し、計算結果として現在庫を変える方法なら、後から修正の経緯を確認できます。

受注済みの数量や検品中の数量を扱う場合は、「現在庫」「引当済み」「販売可能数」を別の項目として定義します。物理的には倉庫にあっても注文へ割り当てた数量は、新たな注文へ使えないことがあります。一つの在庫数へ異なる意味を詰め込まず、担当者が画面を見て判断できる名前にします。

拠点とロケーションを分ける

複数の倉庫や店舗を扱う場合、拠点と棚を一つの自由入力欄へ入れるのではなく、拠点マスタとロケーションの関係を決めます。同じ棚番号が別拠点に存在するなら、拠点コードと棚コードを組み合わせて識別します。拠点間移動では、移動元と移動先を必須にし、同じ拠点を選べないようにするなどの入力制御を検討します。

バーコードで入出庫と棚卸しを登録する

バーコード入力を使うと、商品コードを画面へ手入力する負担を減らせます。スマートフォンのカメラでコードを読み取り、商品マスタのコードと一致した商品を表示してから数量を入力する流れが基本です。倉庫で専用スキャナーを使う場合も、最終的にアプリへ渡される値が商品コードと一致することを確認します。

バーコードは商品の識別に使う情報であり、読み取っただけで在庫が増減したことにはしません。読み取り後に商品名、規格、単位、現在庫、保管場所を表示し、利用者が対象を確認してから入庫や出庫を登録します。誤った商品を読み取った場合に、確認なしで数量を更新する設計は差異を生みやすくなります。

バーコード登録の基本フロー

入庫では、入荷先の拠点を選び、商品コードを読み取り、数量と必要な伝票情報を入力し、登録内容を確認して履歴を保存します。出庫では、出庫先や注文番号を必要に応じて入力し、在庫不足なら登録を止めるか、権限のある担当者だけが例外登録できるようにします。棚卸しでは、帳簿数量を先に見せるかどうかを業務方針に合わせ、実数を入力した後に差異を確認します。

同じ商品を複数個スキャンする作業では、読み取り回数を数量として加算する方式と、数量欄へまとめて入力する方式があります。前者は一品ずつ確認しやすい一方、重複読み取りや誤タップに注意が必要です。後者は速く入力できる一方、数量の根拠を別に残したい場合があります。商品、作業、誤りやすい場面に合わせて方式を選びます。

スマートフォンのカメラは、照明、反射、汚れ、コードの大きさ、端末の性能によって読み取りやすさが変わります。現場のラベルを使って試し、読み取りに失敗したときの検索や手入力の代替方法を用意します。バーコードだけに依存せず、商品名やコードの一部から検索できる画面を残しておくと、ラベルが破損したときも作業を止めにくくなります。

スマートフォンで商品バーコードを読み取り入庫数量を登録する現場イメージ

入力画面・権限・同期を整える

作業ごとに画面を分ける

在庫一覧、入庫登録、出庫登録、棚卸し、商品マスタの編集を一つのフォームへ詰め込むと、入力項目が増えて作業者が迷います。作業の入口を分け、入庫画面には入庫に必要な項目、棚卸し画面には実数と理由に必要な項目を表示します。管理者向けのマスタ編集や履歴修正は、現場向け画面から分離して誤操作を抑えます。

入力後は、登録できたことが分かる表示を出します。登録ボタンを押した後に画面が変わらないと、利用者が繰り返し押して同じ取引を複数登録することがあります。履歴番号や登録日時を表示し、一覧で直近の登録を確認できるようにすると、重複の発見にも役立ちます。

利用者と権限を業務に合わせる

利用者のメールアドレスなど、ログインした人を識別できる情報を履歴へ保存します。そのうえで、作業者は入出庫を登録できる、拠点責任者は棚卸し調整を承認できる、管理者は商品マスタを変更できる、といった役割を決めます。画面を隠すだけでなく、データを取得・更新できる範囲も確認することが大切です。

拠点ごとに担当者がいる場合は、自分の拠点だけを初期表示する設計も考えられます。ただし、表示を絞ったことで全社の在庫を見られなくなると、補充や移動の判断に支障が出ます。現場の操作性と管理者の集計を両立できるよう、一覧と権限のルールを表にして試験します。

同期と通信断を想定する

倉庫や店舗の通信環境が安定しているとは限りません。同期前に同じ商品を別の端末で登録した場合、更新の順序や重複を確認する必要があります。オフラインで入力できる構成を採用する場合も、端末に残ったデータをいつ同期し、同期できなかった取引を誰が確認するかを決めます。

通信が切れたときに、利用者へ「登録済み」と誤解させない表示を用意します。同期状態、最終更新日時、未送信件数などを確認できるようにし、復旧後に再送される取引と重複防止の仕組みを試験します。棚卸しの締め時間など、同期が完了するまで確定できない業務は、作業手順へ明記します。

AppSheet在庫管理アプリの権限設定と同期状態を確認する管理画面イメージ

集計・通知・他システム連携を考える

在庫管理アプリでは、現在庫の一覧だけでなく、発注点を下回った商品、入出庫の推移、棚卸し差異、拠点間の偏りなどを確認できると、次の行動につなげやすくなります。ただし、表示用の集計値と会計や販売に使う確定値を混同しないようにします。集計の対象期間、返品や調整の扱い、無効商品を含めるかを定義してから画面を作ります。

条件に合う商品を管理者へ通知する場合は、何をトリガーにするかを決めます。現在庫が発注点を下回ったとき、棚卸し差異が一定の条件になったとき、同期エラーが発生したときなど、通知の目的を分けます。通知が多すぎると確認されなくなるため、緊急度、担当者、対応期限を記録できる一覧と組み合わせます。

販売、購買、会計、製造、ECなどのシステムとつなぐ場合は、連携するデータと責任範囲を先に決めます。商品コード、数量、日時、取引番号のどれを共通キーにするか、どちらを正しい値とするか、失敗時に再送するかを整理します。ファイル連携を採用する場合は、列の順番、文字コード、重複取込の判定、取込後の確認者を決めます。

AppSheet内の画面で見える数字が、外部システムの確定値と同じタイミングで更新されるとは限りません。更新間隔がある業務では、画面に最終同期日時を表示し、利用者が数字の鮮度を判断できるようにします。連携の仕様が複雑になった場合は、アプリの式を増やし続けるより、連携専用の仕組みや個別開発を検討します。

AppSheetで在庫管理する限界

AppSheetは業務に合わせて試作しやすい反面、在庫の規模や処理の複雑さが増えるほど、データ量、同期時間、同時更新、保守の負担を確認しなければなりません。利用できる機能や動作は構成や契約条件によって変わるため、導入前に実データに近い件数で試します。小さなサンプルだけで本番性能を判断すると、運用開始後に画面表示や同期が遅くなることがあります。

同時更新と在庫確定の難しさ

複数の担当者が同じ商品を同じ時間帯に出庫する場合、二つの端末が同じ残数を見て登録することがあります。単純に画面上の数値を減らすだけでは、片方の更新が上書きされたり、在庫以上の出庫を許したりする可能性があります。取引履歴を追加して集計する構成でも、登録順、同期状態、例外処理を試験し、在庫を確定する責任者と手順を決めます。

複雑な在庫要件への対応

ロット別の払出し、使用期限、シリアル番号、セット品、予約引当、品質区分、委託在庫などを同時に扱う場合は、商品と数量だけの設計では不足します。どの単位で在庫を確保し、どの条件で出庫可否を判断し、返品や廃棄をどう記録するかを設計する必要があります。条件分岐を式へ追加し続けると、変更したときに別の業務へ影響するため、要件とテストケースを管理します。

監査・保守・担当者交代の問題

アプリを作った担当者だけが式やデータ構造を理解していると、退職や異動後に修正できなくなります。マスタ項目、計算式、権限、連携、障害時の対応を文書化し、変更前後の確認方法を残します。管理者が自由に列を追加できる状態も、集計や連携を壊す原因になります。変更申請、テスト、本番反映、結果確認の手順を小さくても定めます。

監査で誰が何を変更したかを厳密に説明する必要がある業務では、標準の履歴だけで要件を満たすかを確認します。履歴の保存期間、訂正の方法、承認者、削除の扱いが重要です。業務上の証跡が不足する場合は、AppSheetを入力の入口に限定し、確定データを別の管理基盤へ保存する構成も検討します。

AppSheet以外の方法を検討する判断基準

商品数や取引量が少なく、同時更新も限られ、現場と管理者が同じ運用ルールを共有できるなら、AppSheetで小さく始める判断ができます。まず入庫と出庫だけを対象にし、棚卸しや発注を次の段階へ分ける方法もあります。作り始める前に、現場が毎日入力できるか、管理者が保守できるか、障害時に手作業へ戻せるかを確認します。

一方、取引量が増え、在庫を止められない、複数拠点が同時に更新する、厳密なロットや期限管理が必要、基幹システムと確実に連携したいという条件がある場合は、専用の在庫管理システムや個別開発を含めて比較します。表計算の構造を改善してから移行したい場合は、Excelで在庫管理する方法を確認し、既存の業務アプリを活かせるか検討したい場合はkintoneで在庫管理する方法も参考になります。

すでにAppSheetを作り始めていて、式の追加や画面の修正を繰り返している場合は、作業量だけでなく構造を見直します。現在のテーブル、実際の取引履歴、利用者の役割、困っているエラーを整理してから、修正、保守、作り直しのどれが適切かを判断します。開発前診断を使い、現状の課題と次の進め方を整理する方法もあります。

導入を進める7つの手順

AppSheetでの在庫管理は、画面から作り始めるより、業務とデータを先に小さく定義すると進めやすくなります。次の順番で確認すると、試作と本番運用の差を抑えられます。

  1. 対象範囲を決める:最初は一つの拠点や一つの作業に絞り、入庫、出庫、棚卸しのどこから始めるかを決めます。
  2. 用語と数量を決める:現在庫、引当済み、販売可能数、検品中などの意味と単位をそろえます。
  3. データを整える:商品コードの重複、空欄、表記ゆれ、不要なサンプル行を確認し、マスタと履歴を分けます。
  4. テンプレートを試す:画面と式のつながりを確認し、自社の項目や区分へ置き換えます。
  5. 現場で試験する:バーコード、数量入力、通信断、二重操作、棚卸し差異を実際の端末で確認します。
  6. 権限と運用を決める:登録、承認、マスタ変更、履歴確認の役割と、障害時の手順を文書化します。
  7. 対象を広げる:試験結果を反映してから、拠点、商品、外部連携、発注や分析を段階的に追加します。

各段階で、入力した取引が履歴へ残り、現在庫の計算へ一度だけ反映され、管理者が差異を説明できるかを確認します。機能を増やす前に、日々の作業で使われている機能を安定させることが、アプリの定着につながります。

導入前に確認したいチェック項目

確認領域 確認する内容 決まっていない場合の問題
商品 商品コード、単位、規格、利用停止の扱い 同じ商品が別行になり、集計が分かれる
取引 入庫、出庫、移動、返品、調整の区分 在庫が変わった理由を説明できない
拠点 倉庫、店舗、棚、移動元と移動先 拠点別の残数や移動結果が合わない
入力 バーコード、数量、確認、登録完了の表示 誤商品や二重登録に気づきにくい
権限 作業者、責任者、管理者の操作範囲 意図しない修正や情報の見えすぎが起きる
同期 通信断、未送信、重複、最終更新時刻 登録済みと未反映の取引を判別できない
保守 変更担当、試験方法、障害時の連絡先 担当者の交代後に修正できない

AppSheet在庫管理のFAQ

AppSheetだけで在庫管理を始められますか?

小規模な範囲であれば、商品マスタと入出庫履歴を用意し、画面と計算を設計して始められます。ただし、データ保存先、利用者の認証、同期、バックアップ、権限などの設定が必要です。現在庫を直接編集せず、取引履歴から計算する構成を最初に決めると、後から確認しやすくなります。

在庫管理テンプレートをそのまま使ってもよいですか?

テンプレートは構成を理解するための出発点として使い、自社のコード、単位、拠点、区分、権限へ置き換えてから試験します。サンプルデータや仮の計算式を残したまま本番へ移すと、実データと混ざるおそれがあります。変更箇所と試験結果を記録してから運用へ移します。

バーコードが読み取れない商品はどうしますか?

商品コードの検索や手入力を代替手段として用意します。ラベルの汚れ、反射、コードの大きさ、端末のカメラ性能によって読み取りやすさが変わるため、現場のラベルで試験します。読み取り後に商品名や規格を表示し、対象を確認してから登録する流れも必要です。

複数人が同じ商品を同時に出庫できますか?

同時利用は可能でも、在庫を正しく確定できるかはデータ構造と同期の設計によります。同じ残数を見て二つの端末が登録する場合、在庫不足の判定や重複防止が必要です。実際の利用人数と取引量で同時操作を試験し、例外が起きたときの確認手順を決めてください。

AppSheetから専用システムへ移行できますか?

移行を考える場合は、商品マスタ、取引履歴、拠点、利用者、添付情報をどの形式で取り出せるかを早めに確認します。AppSheet固有の式や画面をそのまま移すのではなく、業務上必要なデータとルールを整理して移行先へ設計し直します。将来の移行を考えるなら、コードや取引番号を一貫させ、履歴を削除せずに残すことが役立ちます。

まとめ

AppSheetで在庫管理アプリを作ると、表計算で管理していた商品や入出庫を、現場のスマートフォンと管理者の画面で扱えるようにできます。テンプレートは試作を始める手がかりになり、バーコードは商品コードの入力を支援します。ただし、在庫の正しさは画面の見た目やバーコードの有無だけで決まりません。商品マスタ、取引履歴、単位、拠点、権限、同期を一つの業務設計として整理することが大切です。

まずは対象業務を絞り、実際のデータと端末で試験します。二重登録、通信断、棚卸し差異、同時更新、担当者交代後の保守まで確認し、AppSheetの範囲で安定して運用できるかを判断します。要件が複雑になったときは、専用の在庫管理システムや個別開発を含めて比較し、修正・保守・刷新の判断を早めに行いましょう。

修正で済むか、作り直すべきか迷ったら

現状を確認し、修正・保守・刷新のどれが現実的かを整理します。

在庫管理についてのご相談

在庫管理についてのご相談を受け付けています

現状の課題をお聞きし、最適な進め方をご提案します。まずはお気軽にご相談ください。