しごと自動化レシピ

WORK RECIPE Googleスプレッドシート

ハイフン区切りの商品識別子を列へ分解する

「部門-分類-連番」の商品識別子を文字列として別列へ抽出します。先頭ゼロと空の分類を残す正規表現を使い、連番が数値に変わらず、欠落項目も左詰めされないことを確かめます。

実行確認の記録なし

公式資料を参照して構成した手順です。本記事の操作・コードの実行は未確認です。小さな入力例で期待結果を確かめてから利用してください。

できあがるもの

連番は文字列の001と002として残り、F2とF3の確認式は両方TRUEです。SA--002の分類は空で、検査欄は分類欠落になります。元の識別子A列はそのまま残ります。

始める前に

  • ブラウザ版Googleスプレッドシートの編集権限
  • A列の識別子はハイフン2個、各項目自体にハイフンなし
  • B:D列は空欄、元識別子はテキスト形式
入力例

A1:A3は「識別子」「SA-BOOK-001」「SA--002」です。2つ目は分類が欠落した検査用レコードです。

手順

  1. 原本を複製し、B1:D1を部門、分類、連番にします。A列は元識別子を文字列として保持してください。分解後の先頭ゼロは元セルの書式だけでは保護できないため、文字列を返すREGEXEXTRACTを使います。
  2. B2に =REGEXEXTRACT(A2,"^([^-]*)-([^-]*)-([^-]*)$") を入力し、B3にもコピーします。3組の丸括弧がそれぞれ1列となり、*は空の項目も許します。^と$で文字列全体を照合し、ハイフンがちょうど2個の構造に限定します。
  3. B2:D2がSA、BOOK、001、B3:D3がSA、空欄、002になるか確認します。空いているF2に =AND(ISTEXT(D2),EXACT(D2,"001"))、F3に =AND(ISTEXT(D3),EXACT(D3,"002")) を入れ、両方TRUEになるかを確かめます。
  4. E1を検査、E2に =IF(C2="","分類欠落","確認済") を入れて下へコピーします。分類欠落の行を担当者が直してから後続処理へ進めます。項目数が違う識別子では抽出が#N/Aとなるため、空欄へ隠さず構造を確認してください。

期待結果と照合する

連番は文字列の001と002として残り、F2とF3の確認式は両方TRUEです。SA--002の分類は空で、検査欄は分類欠落になります。元の識別子A列はそのまま残ります。

まずこの入力例で確認し、件数や値が一致しているかを見ます。完了表示だけで判断せず、重複・空欄・対象外データも残っていないか確認してください。

うまくいかないとき

  • B:Dに値があると配列が展開できません。数式の右側に別用途のデータを置かないでください。
  • SPLITへ置き換えたりVALUEで数値化したりすると001などの先頭ゼロを失う場合があります。項目内にハイフンを含める仕様にも、この正規表現は適しません。

止める・元に戻す

B2:F3に追加した抽出・検査・型確認の式を削除します。元のA列を残しているので、分解前の識別子に再構成する作業は不要です。

公式資料・対応範囲

参照日:2026-10-17。公式資料の一般的な機能説明と、本記事固有の入力例の実行検証は別です。実務での短縮時間や効果は未計測です。

同じツールで試す

Googleスプレッドシートの記事一覧へ →