ExcelでQRコード在庫管理システムを作る方法|シンプル・低コスト・高信頼なトラッカー構築ガイド

Excelは非常に柔軟なツールであり、小規模な在庫管理なら専用ソフトを購入しなくても十分に活用できます。その中でも「QRコードを使った在庫トラッカー」は、最もシンプルで洗練された仕組みの一つです。この方式では、スキャンするたびに新しいログ行が追加され(追記のみ)、Excelが最新のログから各商品の現在庫を自動計算します。
さらに、QRコードを読み取ると事前入力済みのMicrosoftフォームが開く仕組みにすれば、スマホ1台で快適に操作できます。小規模ビジネス、倉庫、学校、家庭での整理整頓など、あらゆる場面で活用できる理想的なソリューションです。
本記事では、ExcelでQRコード在庫トラッカーを構築する手順を詳しく解説します。
ステップ1:Excelブックのセットアップ
- Excelを開き、新しいファイルを作成する
- OneDriveに保存する(モバイル同期に必須)
- 以下の3つのシートを作成する:
- Inventory(在庫マスターリスト)
- ScanLog(スキャンごとに1行追加されるログ)
- Dashboard(現在状況+サマリー表示)
Inventoryシートは次の構成にします:
- ItemID(品目ID)
- ProductName(商品名)
- Category(カテゴリ)
- CurrentStock(現在庫)
- MinStock(最低在庫数)
- Location(保管場所)
- QRText(QRコード文字列)
- QRImage(QRコード画像)
テーブルへの変換:
- セル範囲を選択する
- 挿入タブ → テーブルを選択
- 「先頭行をテーブルの見出しとして使用する」にチェックを入れる
- OKをクリック
- テーブルデザインタブ → テーブル名を「Inventory」に変更

ルール:
- ItemIDは必ず一意にする(QRコードに埋め込む情報です)
- QRTextには、QRコードにエンコードされる正確な文字列を保存する
ItemIDの生成(シンプルで読みやすい形式):
ItemIDには、次のような統一フォーマットを使用しましょう:
- ITM-0001、ITM-0002、…
自動的に採番したい場合は、次の数式を使います:
="ITM-"&TEXT(ROW(A1),"0000")
- 数式を下方向へコピー(フィルハンドルをドラッグ)
QRTextの作成(任意):
QRTextはシンプルかつ安定した内容にします。これにより、QRコードの中身はItemID=ITM-0001のような形式になります。読み取りミスを防ぎ、後のデータ解析も容易になります。
ステップ2:QRコードの自動生成
方法A:ExcelでQRコードを一括生成する
InventoryテーブルのQRImage列の最初のデータ行に、次の数式を入力します:
=IMAGE("https://api.qrserver.com/v1/create-qr-code/?size=180x180&data=" & [@ItemID])
- 数式を下方向へコピーする
- ItemIDだけを含んだ高品質なQRコードが自動生成されます

QRサーバーの応答が遅い場合は、goqr.meやGoogle Chart API(https://chart.googleapis.com/chart?chs=180×180&cht=qr&chl=)などの無料APIも利用できます。
方法B:無料オンラインジェネレーターを使う
- QR Code Generator(qr-code-generator.com)やQRCode Monkey(qrcode-monkey.com)などの無料ツールにアクセスする
- 各商品について、ItemIDのみを含むQRコードを作成する
- PNGまたはJPG形式でダウンロードする
- 印刷して実際の商品に貼り付ける
プロのコツ: 商品点数が多い場合は、一括生成対応のツールを使いましょう。QRExploreなどのサイトでは、CSVファイルをアップロードして複数のQRコードを一度に生成できます。
ステップ3:QRコードラベルの印刷
Excel内に印刷用ラベルシートを作成し、QRコードを商品に貼り付けられるようにします。
- ItemID、ProductName、QRImageの列を選択する
- 新しいシート「Label」にコピー&ペーストする
- 印刷用に書式を整える:
- QRコードが収まるように行の高さを調整する
- ページレイアウトタブ → 余白 → 狭いを選択
- シール用紙に印刷するか、ラベルを切り取る
- 商品・棚・箱などにラベルを貼り付ける

ステップ4:Excelへデータを送るスキャンアプリの選択
方法A:履歴をエクスポートできるスキャンアプリを使う
QRコードを読み取り、そのデータをExcelに送信できるスキャンアプリを利用します。
- アプリ名:Scan to Excel – QR & Barcode(Dynamiq Data製)
- 無料プランでもほとんどのユーザーに十分なスキャン回数があり、ヘビーユース向けのサブスクリプションは月額約3〜5ドル程度
- Google Playからインストールする
- アプリを開き、Microsoftアカウントでサインインする
- OneDrive上のExcelファイルに接続する
- ScanLogテーブルを選択する
- スキーマを設定する:
- Timestamp → 自動タイムスタンプ
- ItemID → スキャンしたデータ
- Action → 手動選択(スキャンごとに「Receive(入庫)」または「Issue(出庫)」を選択)
- Quantity → デフォルト値を1に設定
- スキャンを開始する
多くのQRスキャナーアプリはスキャン履歴を保存し、エクスポートや共有にも対応しています。
- QRラベルをスキャンする
- 対応している場合は、アプリ内ですぐに短いメモを入力する
- 日次または週次で、スキャン履歴をCSV形式でエクスポートする
- ScanLogシートに貼り付け・追記する
方法B:Microsoftフォームでスキャン申請を受け付ける
Microsoftフォームを作成し、スマホでQRコードをスキャンして取引を送信すると、Excelが自動更新されます。多くのユーザーが求めるのは、まさにこのワークフローです。
- 挿入タブ → 新しいフォームをクリック
- フォーム画面が開くので、次のフィールドを追加する:
- ItemID(短い回答)
- Action(選択肢):Receive、Issue
- Quantity(短い回答):後ほどExcel側で数値に変換します

- 回答の収集をクリックする

- リンクのコピーをクリックしてURLを共有する

このフォームは自動的に連携されたExcelブックを作成し、送信ごとに新しい行が追加されます。まずはテスト送信してみましょう:
- スマホでQRコードをスキャンする
- ItemIDを確認(または手動入力)する
- Actionを選択する
- Quantityを入力する
- 送信をクリックする

- Excelブックを開き、フォームの回答シートを確認する
- すべての送信が自動的に1行として追加されていることを確認する
- 列名を整え、不要な列を削除する
- シート名を「ScanLog」に変更する

方法C:スキャン時にItemID欄を自動入力させる
QRコードにITM-0001だけを埋め込む代わりに、事前入力済みフォームリンクをエンコードすることもできます。Microsoft FormsはURLパターンによるフィールドの事前入力に対応しているため(フォームの設定によります)、Inventoryシート側で各QRコードに事前入力リンクを持たせられます。
- フォームを開く → 右上の3点メニュー → 事前入力したリンクを取得を選択

- サンプルのItemID(例:ITM-0001)を入力する
- 事前入力したリンクを取得をクリックする
- リンクのコピーをクリックして生成されたリンクを取得する
- サンプルのItemID部分をプレースホルダーに置き換える

事前入力URLは次のような形式になります:
https://forms.office.com/Pages/ResponsePage.aspx?id=DQSIkWdsW0yxEjajBLZtrQAAAAAAAAAAAAN__gCq2f5UNloxU0IwWTM0Nj……..=ITM-0001
Excelで品目ごとのPrefilledLinkを作成する:
- Inventoryシートに「PrefilledLink」という名前の新しい列を挿入する
- コピーした事前入力URLをFormPrefillTemplateセル(例:G2)に貼り付ける
- 次の数式を挿入し、テンプレート内のサンプルITM-0001を現在の行のItemIDに置き換える
=SUBSTITUTE($G$2,"ITM-0001",[@ItemID])
これで各行が固有のURLを持ち、そのQRコードをスキャンすると正しいItemIDがすでに入力された状態でフォームが開きます。

各PrefilledLinkをQRコードに変換する:
QRImage列に次の数式を入力します:
=IMAGE("https://api.qrserver.com/v1/create-qr-code/?size=180×180&data=" & ENCODEURL([@PrefilledLink]))
これにより、事前入力フォームリンクを開くQRコード画像が返されます。

印刷して商品にラベルを貼る:
同じシートまたは別の「Labels」シートに、シンプルなラベルレイアウトを作成します。表示項目は次の通りです:
- ItemID
- ProductName
- QRImage
シール用紙に印刷し、商品に貼り付けます。ラベルを作成した後は、ItemIDを変更しないように注意してください。
スキャンワークフローのテスト:
ほとんどのユーザーはスマホのスキャナーを使って読み取ります:
- スマホでスキャナーを開く
- QRラベルをスキャンする
- ItemIDが入力済みのフォームが自動的に開きます

- ItemIDがすでに入力されていることを確認する
- ActionとQuantityを選択・入力する
- 送信をクリックする

これが実運用において最もスムーズなワークフローです。
ステップ5:スキャンログの構造設計
すべてのスキャンは在庫取引として扱います。Microsoft Formsは、タイムスタンプ列と質問ごとの列を含む回答テーブルを自動作成します。回答シートの名前を「ScanLog」に変更してください。
ScanLogには次の列が含まれていることを確認します:
- Timestamp(タイムスタンプ)
- ItemID(品目ID)
- Action(入庫/出庫)
- Quantity(数量)
このログは追記専用(append-only)とします。履歴が完全に保持され、在庫数が常に全ログから計算されるため、トラッカーとして高い信頼性が保たれます。

重要な原則:
- このテーブルは追記のみとする
- 行の編集・削除は一切行わない
ステップ6:現在庫数の計算
InventoryテーブルのCurrentStock列に、次の数式を入力して手持ち在庫を計算します:
=LET( id, [@ItemID], initial, 0, received, SUMIFS(ScanLog[Quantity], ScanLog[ItemID], id, ScanLog[Action], "Receive"), issued, SUMIFS(ScanLog[Quantity], ScanLog[ItemID], id, ScanLog[Action], "Issue"), initial + received - issued )
この数式により、スキャンするたびに在庫数が自動更新されます。

在庫不足アラートの設定:
- CurrentStock列を選択 → 条件付き書式 → セルの強調表示ルール → 指定の値より小さいを選択
- MinStockを選択 → 書式を設定
- OKをクリック

在庫不足やマイナスの在庫値が自動的に強調表示されます。

ステップ7:シンプルなダッシュボードの構築
Dashboardシートを作成し、在庫全体をサマリー表示しましょう。
登録品目数(ユニーク数):
=COUNTA(UNIQUE(Inventory[ItemID]))
総在庫数:
=SUM(Inventory[CurrentStock])
マイナス在庫の品目数:
=COUNTIF(Inventory[CurrentStock], "<0")
総取引件数:
=COUNTA(ScanLog[Timestamp])
要発注品目の表示:
=FILTER(Inventory[[ItemID]:[Location]], Inventory[CurrentStock] < Inventory[MinStock], "発注が必要な品目はありません")

ワークフローまとめ
- スマホまたはスキャナーアプリで商品のQRコードを読み取る
- 「Receive(入庫)」または「Issue(出庫)」を選択する
- Excelが自動更新される(同期されていない場合はブックを更新)
- 在庫数は常に最新の状態に保たれる
まとめ
以上の手順に従えば、ExcelだけでQRコード在庫トラッカーを構築できます。このシステムが真価を発揮するのは、ユーザーにとっての操作がシンプルで、レポーティングが信頼できる場合です。各商品に恒久的なItemIDを割り当て、QRラベルを生成し、事前入力済みのMicrosoftフォーム経由ですべてのスキャンを記録すれば、やり取りのたびにタイムスタンプ付きのクリーンな記録が自動的に蓄積されていきます。誰かが在庫セルを手動で編集する必要はありません。
無料または低価格のスキャナーアプリを使ってもよいですし、Microsoft Formsで独自のワークフローを組んでも構いません。Excelの数式と軽量なダッシュボードを組み合わせれば、在庫水準の監視、取引履歴の確認、変更内容の監査まで、在庫が拡大しても簡単に行えるようになります。
-
【Word・Outlook対応】Officeアプリで絵文字のキーボードショートカットを作成する方法
Word文書やOutlookのメールに絵文字を頻繁に挿入している方の中には、そのたびに何度も操作を繰り返して手間に感じている方も多いのではないでしょうか。実は、WordやOutlookなどのOfficeアプリでは、絵文字専用のキーボードショートカットを簡単に作成できます。「オートコレクト(AutoCorrect)」機能を使えば、abcdや1234のような任意の文字列をお気に入りの絵文字に自動変換できるのです。 Windowsパソコンには数え切れないほどの絵文字が用意されており、さまざまな方法で挿入できますが、外部ツールに頼らず「記号と特殊文字」機能だけで絵文字を挿入しているなら、このショートカ
-
ExcelのINDEX関数の使い方|基本構文から参照形式まで徹底解説
Excelのデータベースは、必要に応じて自由なサイズで作成できます。しかし、データが膨大になると管理が難しくなり、特定のセルに入力されたデータを探すだけでも、スクロール作業に多くの時間を費やしてしまいます。VLOOKUP関数だけでは物足りないと感じたら、ExcelのINDEX関数を活用してみましょう。 この記事では、ExcelのINDEX関数を使って、必要なデータを素早く取り出す方法をわかりやすく解説します。 ※本ガイドのスクリーンショットはExcel 365のものですが、手順はExcel 2019およびExcel 2016でも同様に利用できます(UIの見た目が多少異なるだけです)。 E