EXCEL 実践

公開:2026年9月30日 ・ 情報確認:2026年9月30日

編集:小さな会社の業務ノート

ExcelのREGEXEXTRACTで文章から請求管理番号を抜き出す方法

問い合わせのメモに「9月分はINV-2026-014を確認」と書かれているのに、別の行では「要確認/管理番号 INV-2026-015」と書かれている。番号が文章のどこに入るか決まっていないと、区切り文字だけを頼りに列を分けるのは難しくなります。

この記事では、INV-2026-014 のように、英字3文字・ハイフン・数字4桁・ハイフン・数字3桁という形が決まっている架空の管理番号を、Excelの REGEXEXTRACT 関数で抜き出します。実在する請求書番号や顧客情報は使いません。

どんなときに使うか

管理番号の前後の言葉は変わっても、番号自体の形が決まっている場合に向いています。たとえば「担当へ確認 INV-2026-014」「INV-2026-015 の控えを保存」のどちらからも、同じ形の番号を取り出せます。

番号を取り出せたら、元のメモと管理台帳を照合しやすくなります。ただし、関数は「その形に合う文字列」を探すだけです。抽出された番号が正しい請求書を指すかどうかは、元資料と照らして確認してください。

使う前に確認すること

Microsoftの公式サポートが REGEXEXTRACT の適用先として示しているのは、Excel for Microsoft 365とExcel for Microsoft 365 for Macです。Excel 2021・2024などの買い切り版については、この公式ページに適用先として記載されていません。式を入力する前に、利用しているExcelで =REGEXEXTRACT( と入力し、関数候補が表示されるかを確認してください。利用できない環境では、この練習の式は動きません。

初めて使う場合は、原本を直接加工せず、架空データやコピーしたファイルで操作を試しましょう。ここで使うデータは次の5件です。

行A列:架空の対応メモ期待する番号
29月分はINV-2026-014を確認INV-2026-014
3要確認/管理番号 INV-2026-015INV-2026-015
4INV-2026-016 の控えを保存INV-2026-016
5次回の確認待ち番号なし
6旧番号 INV-2025-118、新番号 INV-2026-017INV-2025-118(最初の一致)

架空データで手順を試す

新しいブックを開き、A1に「対応メモ」、B1に「抽出した番号」と入力します。上の表のメモをA2からA6まで入力してください。全角の「INV」や全角数字はこの練習では使いません。文字列の違いによる失敗を避けるため、上の半角表記をそのまま使います。

B2に次の式を入力します。

=REGEXEXTRACT(A2,"INV-[0-9]{4}-[0-9]{3}")

Enterキーを押し、B2に INV-2026-014 と表示されるか確かめます。次にB2の式をB6までコピーします。フィルハンドルを下へドラッグしても、B2をコピーしてB3:B6へ貼り付けても構いません。

この段階では、B3とB4にも番号が出ます。B6には2つ番号が含まれますが、この式で得られるのは最初に一致した INV-2025-118 です。B5には一致する番号がないため、エラーが出ます。エラーの見た目だけで「番号なし」と断定せず、A5の元メモも確認します。

式の読み方と結果の確認

REGEXEXTRACT は、指定した文章の中から、指定した形に一致する文字を抽出する関数です。今回の A2 は検索対象のセルです。引用符で囲んだ部分が探す形を表します。

INV- は固定の文字です。[0-9] は半角数字1文字、{4} はその数字を4文字続ける意味です。後半の [0-9]{3} は半角数字3文字です。したがって、式全体で INV-2026-014 のような形を探します。この表記はMicrosoftが説明する正規表現の仕組みを、今回の架空番号に当てはめたものです。

抽出後は、次の順で確認してください。

  1. B2からB4が上表の期待する番号と一致する。
  2. B5は一致する番号がない行として、元のA5も読む。
  3. B6は旧番号が先に出ていることを確認する。新番号を取りたい業務なら、この式をそのまま使わない。
  4. 取得した文字列を実際の管理台帳と照合する前に、番号の桁数と接頭辞のルールを自社の仕様に合わせて見直す。

公式サポートによると、REGEXEXTRACT は一致した結果をテキストとして返します。今回のように英字とハイフンを含む管理番号は、数値へ変換せず、テキストのまま扱います。

一致しない場合と、誤抽出を防ぐ方法

「番号なし」の行を一覧で見やすくしたい場合は、B2の式を次のように変更してからB6までコピーします。

=IFERROR(REGEXEXTRACT(A2,"INV-[0-9]{4}-[0-9]{3}"),"番号なし")

この式は、抽出時にエラーが出たときに「番号なし」と表示します。ただし、入力式の誤りまで隠してしまう可能性があります。最初は REGEXEXTRACT 単独でB2からB6までの結果を確かめ、その後で表示を整えるのがおすすめです。

また、式は最初に一致した番号を返します。A6のように旧番号と新番号が同じメモにあると、抽出自体は成功しても、目的の番号と異なります。「新番号だけ」など意味で選ぶには、メモの書き方を統一するか、人が確認する列を別に設けてください。番号の形式が同じである以上、この式だけで新旧を判定することはできません。

記号や桁数が混在している場合も注意が必要です。たとえば INV-26-014 は年が2桁なので一致しません。全角の INV-2026-014 も今回の半角用パターンには一致しません。実務へ広げる前に、数件の例外を含めたサンプルで試してください。

値として保存するとき

抽出列を別のファイルへ渡すとき、元メモを削除すると式の参照先が変わる可能性があります。必要ならB列をコピーし、別の列やシートへ「値のみ貼り付け」で結果を確定させます。貼り付け後は、元のB列と確定した値を数件見比べてください。値のみ貼り付けの基本操作は、サイト内の「Excelの『値のみ貼り付け』とは?」で詳しく説明しています。

よくある質問

関数名が候補に出ません

まずExcelのバージョンを確認してください。Microsoft公式サポートでは REGEXEXTRACT の適用先がMicrosoft 365版に限られています。利用できない版なら、同じ式を入力しても再現できません。今回の練習は対応するExcelで行ってください。

B6で新番号が表示されません

この式は最初の一致を返すためです。B6の文章では旧番号が先に書かれています。新旧の意味まで関数が理解するわけではありません。

実際の請求書番号にそのまま使えますか

使う前に自社の番号規則を確認し、接頭辞・桁数・区切り記号を修正してください。抽出結果が正しい請求書を示すか、元の記録と管理台帳との照合も必要です。実データを記事や公開の練習ファイルに入れないでください。

公式資料と対応環境

公式情報確認日:2026年9月30日。Microsoft 365版Excelを対象に説明しています。実機画面での操作検証は未実施です。

関連記事