Sync Master
ブログ

仕入先からのシートを「そのまま」同期する時のコツ

Googleシート同期のコツ

この記事の概要

仕入先から届くシートは、必ず何かしらクセがあります。列名のずれ、単位の違い、改行の混入——そんな現実とどう付き合うか。中間シートを噛ませる発想と、信頼関係を壊さない返し方をお伝えします。

Shopifyストアの在庫補充を仕入先からのデータに頼っているお店は、けっこう多いはずです。週に一度、あるいは毎日、仕入先からGoogleシートのリンクやExcelファイルが送られてきて、それを元に在庫数や入荷予定を更新する——よくある運用パターンですよね。

ところが、いざそのシートをShopifyに同期しようとすると、必ずと言っていいほど壁にぶつかります。列名が微妙に違う、数量の単位が違う、空白セルに「-」が入っている、商品名にいきなり改行が混ざっている——仕入先のシートには、それぞれの会社の歴史と癖が詰まっているからです。今回は、その現実とどう付き合うか、というお話です。

仕入先シートの問題あるある

まず、典型的に出会う問題を挙げてみましょう。あなたのストアにも、心当たりがあるはずです。

  • 列名が日本語と英語で揺れている(「品番」「SKU」「商品コード」が混在)
  • 在庫数の列にダッシュ「-」やスペースが入っている(数値として扱えない)
  • 商品名の末尾に半角スペースや改行が混ざっている
  • ケース入数の単位が違う(個数 vs ケース vs バラ)
  • シートが毎週「2026-W10」のようにタブで分かれていて、最新タブを毎回追わないといけない
  • 突然「廃番」「リニューアル」と書かれた行が紛れ込んでくる

どれも一見すると小さな問題ですが、Shopifyへ同期する段になると致命傷になりかねません。たとえば在庫数列にダッシュが一つ入っているだけで、同期処理がその行で止まってしまうこともあります。だからといって、仕入先に「うちのシステムに合わせて書式を変えてください」と頼むのは、関係性によっては難しい話です。

列名のずれと単位の違い

問題のなかでも、もっとも頻繁に出会うのが列名のずれと単位の違いです。これは仕入先ごとに事情があるので、こちらが調整するしかありません。

列名のマッピング表を作る

おすすめは、シンプルなマッピング表を一枚作っておくことです。「仕入先A の『品番』は、うちの『SKU』」「仕入先Bの『在庫数』は、うちの『在庫数(個)』」というふうに、対応関係を一覧化します。新しい仕入先が増えても、この表に一行足すだけで対応できます。マッピング表自体もGoogleシートで管理しておけば、後任の担当者にも引き継ぎやすくなります。

単位の換算ルールを明文化する

もっと厄介なのが単位の違いです。仕入先は「1ケース=24本」で在庫を管理しているのに、ストアでは「1本単位」で売っている——こういう食い違いは日常茶飯事です。この場合、「仕入先シートの在庫数 × 24 = うちの在庫数」という換算ルールを、シート上の数式として固定してしまいましょう。人間の頭の中でだけ計算するのは事故のもとです。シートにルールが書かれていれば、誰が見ても同じ答えになります。

中間シートを噛ませるアイディア

ここまで読んで、「仕入先のシートをそのままShopifyに繋ぐのは無理がある」と感じた方もいるかもしれません。その通りです。実は、現実的な解決策は「仕入先シートとShopifyの間に、もう一枚シートを噛ませる」ことです。これを中間シート、あるいは正規化シートと呼びます。

中間シートの役割はシンプルです。仕入先シートからIMPORTRANGE関数でデータを引っ張ってきて、そこで列名を整え、単位を換算し、ゴミデータを除外する。そして、その結果として「Shopifyに渡してもよい、きれいなデータ」が出来上がる——という流れを作ります。Shopifyへの同期アプリは、この中間シートだけを見れば良いことになり、仕入先側の事情の変化に振り回されなくなります。

中間シートを置くもう一つの利点は、「Shopifyに反映する前に人間が確認できるバッファ」が生まれることです。同期前にシートを目視して、明らかに異常な数字(たとえば在庫数がマイナス、あるいは普段の100倍)があれば、その時点で気付けます。直接同期だと、気付いた時にはストアが書き換わっています。

信頼関係を壊さない返し方

技術的な工夫は中間シートでだいぶカバーできますが、人間関係の側もちゃんと整える必要があります。仕入先のシートにエラーや矛盾が見つかった時、どう伝えるかは、長期的なビジネスの健康に直結します。

ありがちなのが、「この列、また空欄になってます!」と矢継ぎ早に指摘してしまうケース。たしかにこちらの作業は止まるのですが、仕入先の担当者も忙しい中で対応してくれていることが多いので、一方的に責めるとギスギスします。代わりに、「今週分、念のため確認いただけますか。XX行目の在庫数が空欄でした」のように、行番号と具体的な箇所を添えて、淡々と事実を伝えましょう。

もっと根本的な解決として、仕入先と「最低限揃えたい列」「これだけは絶対に空欄にしないでほしい項目」を最初に合意しておく、というアプローチもあります。一度この合意があれば、後から「ルールに沿っていない部分がある」と指摘するのが楽になります。最初の数回はぶつかるかもしれませんが、半年後には双方ストレスが減るはずです。

仕入先からのシートとの付き合い方は、一朝一夕には完璧になりません。けれど、中間シートを置く、マッピング表を作る、伝え方を整える——この三つを地道に積み重ねていくと、確実に運用は楽になっていきます。シートのクセを完全に消そうとせず、上手に受け流す仕組みを作る、という発想が大切です。

関連記事

あわせて読みたい記事

  • Googleシート同期のコツ

    Googleシートで覚えておきたい関数5選 (在庫運用編)

    在庫シートを軽快に運用したい人のために、覚えておくと圧倒的に楽になる関数を5つ厳選しました。ARRAYFORMULA、XLOOKUP、IMPORTRANGE、QUERY、UNIQUEとCOUNTIFの活用例を、在庫運用の文脈で紹介します。

  • マルチロケーションGoogleシート

    1枚のシートから複数ロケーションの数量を流し込む実装

    ロケーションを列として並べた1枚のシートから、Shopifyの各ロケーションへ数量を流し込む具体的な作り方を解説します。ヘッダー行の設計、列とロケーションの対応づけ、検算までを順を追って整理します。

  • マルチロケーション同期のコツ

    ロケーションごとに安全在庫(バッファ)を設定する

    全店共通のバッファでは、出荷の速い倉庫と遅い店舗を同じ基準で守ることになり、どこかに無理が出ます。ロケーションごとに別々の安全在庫を持たせる設計と、バッファ込みの公開数量をシートで計算する方法を整理します。

在庫数を手で打ち込むのは、もうやめましょう。

Sync MasterをShopifyにインストールして、5分以内に最初の同期を実行。