Article

【Excel】関数名の前に「_xlfn.」が付いて「#NAME?」になる原因と対処法

この記事で分かること

Excelで関数名の前に「_xlfn.」が付いて「#NAME?」になる原因と対処法を、xlsxの内部XMLでの扱いと合わせてExcel 2024で実機検証で解説します。

Excelで数式バーを見ると、関数名の前に _xlfn. が付いていて、セルには #NAME? と表示される。この現象が起きる原因はひとつで、「今使っている Excel が、そのファイルに書かれている関数を実装していない」ことです。2026 年現在、Excel 2024 でも、Microsoft 365 向けの新関数や、ビルド差で利用可否が分かれる新関数を含むファイルを開くと同じ現象が発生します。本記事では原因と対処法を、xlsx の内部 XML の動きも含めて Excel 2024 (Build 19929.0) での実機検証付きで解説します。

Excel 2024 で _xlfn.GROUPBY を含むファイルを開くと、数式バーにプレフィックスがそのまま表示されセルが #NAME? になる
Microsoft 365 保存を模した再現ファイル。xlsx 内部 XML に _xlfn.GROUPBY を手動注入して作成したもので、実機 Microsoft 365 で保存したファイルではない。これを Excel 2024 (Build 19929.0) で開くと、数式バーにプレフィックスがそのまま表示され、セルは #NAME? になる。

原因の一覧と見分け方

_xlfn. が表示される原因は、お使いの Excel が「ファイル内の関数をまだ実装していない」ことです。実装のタイミングは Excel のバージョンだけでなく、更新チャネルとビルド番号でも変わります。自分のビルドは ファイル → アカウント → Excel のバージョン情報 で確認できます。

使っている Excel_xlfn. が付いて #NAME? になり得る関数発生頻度(2026年)
Excel 2024 / Excel 2024 for Macタイプ A (原則 Microsoft 365 向け): GROUPBY / REGEXTEST / REGEXEXTRACT / REGEXREPLACE / TRANSLATE / DETECTLANGUAGE / TRIMRANGE / PERCENTOF など
タイプ B (公式適用先に Excel 2024 / 2021 も含むがビルド差で使えないことがある): PIVOTBY など
★★★ 現在増加中
Excel 2021上記に加え LAMBDA / TAKE / DROP / VSTACK / HSTACK / TEXTSPLIT / TEXTBEFORE / TEXTAFTER / CHOOSEROWS / CHOOSECOLS / EXPAND / TOROW / TOCOL / WRAPROWS / WRAPCOLS★★ 減少中
Excel 2019 / Excel 2016上記に加え FILTER / UNIQUE / SORT / SORTBY / XLOOKUP / XMATCH / LET / SEQUENCE / RANDARRAY★ 2025-10 でサポート終了、残存利用者のみ
Excel 2016 と Excel 2019 は 2025 年 10 月 14 日にサポートが完全終了 しました。セキュリティ更新も提供されないため、今でも利用している場合は Microsoft 365 または Excel 2024 へのアップグレードを強く推奨します。
GROUPBY / REGEXTEST / REGEXEXTRACT / PERCENTOF / TRIMRANGE / TRANSLATE / DETECTLANGUAGE などは、2026 年 4 月時点の Microsoft 公式サポートページでは主に Microsoft 365 向けの関数として案内されています。一方、PIVOTBY は公式の適用先に Excel 2024 / Excel 2021 も含まれます。つまり、すべてが「ビルド待ち」で使えるようになるわけではなく、関数ごとに適用先が異なります。本記事の検証環境 (Excel 2024 Build 19929.0) ではこれらが #NAME? になりましたが、原因が「未配信」なのか「そのエディション自体が対象外」なのかは、個別の関数ページで確認してください。
PY 関数 (Python in Excel) は、数式バーから直接入力できない特殊な関数です。通常の _xlfn. / #NAME? 現象とは仕組みが異なるため、本記事の対象からは除外しています。

ケース1 ― Excel 2024 で _xlfn.GROUPBY / _xlfn.REGEX* 等が表示される (この記事で扱う主なパターン)

Microsoft 365 向けの新関数や、ビルド差で利用可否が分かれる新関数を含むファイルを Excel 2024 で開くと、数式バーに _xlfn. が付き、セルが #NAME? になることがあります。本記事の検証環境 (Excel 2024 Build 19929.0、2026-04-24 時点) での再現例を、原因の性質で 2 つに分けて示します。

タイプ A ― 原則として Microsoft 365 向けの新関数

次の関数は、2026 年 4 月時点で公式サポートページの「Applies To」が主に Microsoft 365 向けに案内されているものです。Excel 2024 側のビルド更新だけで使えるようになるとは限らず、そもそも対象エディションが異なる可能性があります。個別の関数ページで適用先を確認してください。

  • GROUPBY / PERCENTOF ― 集計系
  • REGEXTEST / REGEXEXTRACT / REGEXREPLACE ― 正規表現系
  • TRANSLATE / DETECTLANGUAGE ― 翻訳サービス連携
  • TRIMRANGE ― 範囲から空白行・列を除去
正規表現関数 REGEXEXTRACT を含むファイルを Excel 2024 で開いたときに _xlfn.REGEXEXTRACT が表示されセルが #NAME? になる
正規表現関数 REGEXEXTRACT を含むファイルを Build 19929.0 で開いた例。数式バーに _xlfn.REGEXEXTRACT がそのまま表示される。

タイプ B ― 公式適用先に Excel 2024 / 2021 も含むが、本ビルドではまだ利用不可の関数

PIVOTBY は、Microsoft 公式サポートの「Applies To」に Excel 2024 / Excel 2024 for Mac / Excel 2021 / Excel 2021 for Mac も含まれています。ただし実際の配信は更新チャネルとビルドに依存しており、永続ライセンス版では配信が遅れる場合があります。

Excel 2024 Build 19929.0 で _xlfn.PIVOTBY を含むファイルを開いたときの数式バー表示とセルの #NAME? エラー
本検証環境 (Excel 2024 Build 19929.0) では PIVOTBY_xlfn. 付きで #NAME? になった。より新しいビルドでは利用できる可能性があるため、まずは ファイル → アカウント で更新を確認する。

いずれのタイプも、Excel 2024 側で直接入力しても同じ結果になります。つまり ファイルを「開いたら出た」のか「今入力したら出た」のかに関わらず、原因はどちらかひとつ ― その関数がそもそも今のエディションの対象外か、ビルドへの配信待ちかです。個別関数の適用先確認と、ビルドの更新確認の 2 つを組み合わせて切り分けてください。

ケース2 ― Excel 2021 で _xlfn.TAKE / _xlfn.VSTACK 等が表示される

Excel 2021 では、2021 年に追加された世代の動的配列関数 (FILTER / SORT / UNIQUE / XLOOKUP / LET / SEQUENCE / RANDARRAY) は使えます。しかし、2022 年以降に追加された次の関数は使えません。

  • LAMBDA と関連関数 (BYROW / BYCOL / MAP / REDUCE / SCAN / MAKEARRAY)
  • TAKE / DROP / CHOOSEROWS / CHOOSECOLS
  • VSTACK / HSTACK
  • TEXTSPLIT / TEXTBEFORE / TEXTAFTER
  • TOROW / TOCOL / WRAPROWS / WRAPCOLS / EXPAND

これらの関数を含むファイルを Excel 2021 で開くと _xlfn.TAKE_xlfn.TEXTSPLIT のように表示されます。

ケース3 ― Excel 2016 / 2019 で _xlfn.FILTER / _xlfn.UNIQUE 等が表示される (歴史的経緯)

2020 年前後に多く見られたパターンです。Excel 2019 および Excel 2016 には、動的配列機能そのものが搭載されていません。したがって Microsoft 365 / Excel 2021 以降のファイルに含まれる以下の関数はすべて _xlfn. 付きになります。

  • FILTER / SORT / SORTBY / UNIQUE
  • XLOOKUP / XMATCH
  • LET / SEQUENCE / RANDARRAY

このパターンは、Excel 2016 / 2019 が 2025 年 10 月 14 日にサポートを終了したため減少傾向ですが、社内で永続ライセンス版を使い続けている環境では今も発生します。

対処法1 ― 作成元の Microsoft 365 で開き直して値で固定する

受信側の Excel でエラーが出る場合、もっとも確実な対処は、作成元で値に固定してから渡すことです。手順は次の通りです。

  1. Microsoft 365 でファイルを開く(スピル結果が正しく計算されていることを確認)
  2. 該当の数式セル、またはスピル範囲全体を選択してコピー
  3. ホーム → 貼り付け → 値 (V) を選択して同じ位置に貼り付け
  4. 数式が値に置き換わったことを確認して上書き保存

値に固定すれば、受信側の Excel バージョンに関係なく正しく表示されます。ただし元の数式は消えるため、作成元のファイル (数式あり) と配布用ファイル (値のみ) は別名で管理することを推奨します。

対処法2 ― 受信側でも動く代替式に書き換える

受信側の Excel でも数式として動かしたい場合は、代替式に書き換えます。代表的な置き換え例を挙げます。

新しい関数旧バージョン・旧ビルドでも動く代替
GROUPBY / PIVOTBYピボットテーブル / SUMIFS + UNIQUE / 作業列 + SUMIF
REGEXTESTISNUMBER(SEARCH(...)) (簡易パターンのみ) / VBA の RegExp
REGEXEXTRACT / REGEXREPLACELEFT / MID / FIND の組み合わせ / VBA の RegExp
TRANSLATE / DETECTLANGUAGEMicrosoft Translator / DeepL など外部サービス
TRIMRANGEFILTER + NOT(ISBLANK(...))

それぞれの代替式の具体的な書き方は、関数別の個別記事で解説しています。

対処法3 ― 受信側の Excel を Microsoft 365 にアップグレードする

頻繁にファイルをやり取りする環境であれば、Microsoft 365 へのアップグレードが最も手間を減らします。2026 年 4 月現在、次の選択肢があります。

  • Microsoft 365 (Personal / Family / Business) ― サブスクリプション。新関数は Current Channel 経由で最優先で配信されます。
  • Excel 2024 (永続ライセンス) ― 使える新関数は関数ごとに異なります。PIVOTBY のように公式の適用先に Excel 2024 が含まれるものもありますが、GROUPBY / REGEX* / TRANSLATE / DETECTLANGUAGE / TRIMRANGE / PERCENTOF などは、2026 年 4 月時点の公式ページでは主に Microsoft 365 向けとして案内されています。更新だけで必ず使えるようになるとは限らないため、個別のサポートページを確認してください。
  • Excel 2019 / 2016 ― 2025 年 10 月 14 日サポート終了。現在は非推奨。

なぜ _xlfn. が付くのか ― xlsx 内部の XML の仕組み

_xlfn. は、xlsx ファイルの内部 XML にある数式の「新関数印」です。新しい関数を含む数式を xlsx に書くとき、Excel は互換性のために関数名の前に _xlfn. を付けて保存します。古いバージョンの Excel は、この印を見て「自分が知らない新しい関数だ」と判定し、そのまま _xlfn.GROUPBY(…) の形で表示し、計算では #NAME? を返します。

Excel 2024 で FILTER を入力して保存した xlsx の XML を実際に覗くと、こうなっています。

<c r="E2" t="str" cm="1"><f t="array" ref="E2:G4">_xlfn._xlws.FILTER(A2:C6, B2:B6="東京")</f><v>山田</v></c>

注目すべきは、Excel 2024 で書いた FILTER も、ファイルの中身では _xlfn._xlws.FILTER という二重プレフィックス付きで保存されている点です。画面上は FILTER と見えますが、それは Excel 2024 がこの関数を「自分が知っている新関数だから表示時にプレフィックスを隠す」と判定しているからです。

  • _xlfn. は「新関数全般」を示すプレフィックス
  • _xlws. は「ワークシート関数スコープ」のさらに内側のプレフィックス (FILTER / SORT のみ二重)
  • _xlpm.LAMBDA のパラメータ名 (_xlpm.x のように出る)

同じファイルを Excel 2019 で開くと、Excel 2019 は _xlfn._xlws.FILTER を認識できず、画面上も内部のままの名前で表示し #NAME? を返します。ケース3 の「Excel 2019 で _xlfn.FILTER が出る」現象の正体はこれです。

Excel 2024 で FILTER 関数は内部 XML では _xlfn._xlws.FILTER と保存されているが、画面上は FILTER として表示される
同じファイルを Excel 2024 で開いたときの FILTER 関数。内部では _xlfn._xlws.FILTER と記録されているが、Excel 2024 が認識するため画面上は FILTER として表示される。
Excel 2024 で FILTER 関数が正しくスピルして 3 行分の抽出結果を返している
FILTER は Excel 2024 で正しくスピルして結果を返す。

自分の xlsx の中に _xlfn. が入っているか確認する手順

xlsx は内部的に zip 形式なので、次の手順で中身を確認できます。

  1. 確認したい xlsx ファイルのコピーを作成する(誤変更防止)
  2. コピーの拡張子を .xlsx から .zip にリネーム
  3. zip を展開
  4. xl/worksheets/sheet1.xml をメモ帳などのテキストエディタで開く
  5. _xlfn. で検索すると、新関数が使われている数式がすべてヒットする
.xlsx を展開して xl/worksheets/sheet1.xml を開くと、_xlfn._xlws.FILTER などのプレフィックスがそのまま記録されている様子が見える
xlsx を展開して xl/worksheets/sheet1.xml を開いたところ。_xlfn._xlws.FILTER などのプレフィックスが、ファイル内部にそのまま記録されている様子が確認できる。
リネームして確認したファイルは元に戻さず、そのまま削除してください。Excel は拡張子が .xlsx の zip であれば読めますが、展開して再度 zip 化したファイルは順序やメタ情報が変わるため、元と同じではありません。

それでも解決しないときの確認ポイント

  • Excel を最新ビルドに更新する ― Excel 2024 / 2021 / Microsoft 365 のいずれでも、ファイル → アカウント → 更新オプション → 今すぐ更新 で最新ビルドが配信されます。Microsoft 公式では対応済みとされている関数が #NAME? になる場合、ビルドが古い可能性が高いです。本記事の検証は Build 19929.0 で実施しましたが、より新しいビルドでは結果が変わります。
  • Microsoft 365 の更新チャネルが「月次エンタープライズ」「半期エンタープライズ」等になっている ― 新関数は Current Channel に先行配信され、エンタープライズ系チャネルは遅れます。自分のチャネルは ファイル → アカウント で確認できます。
  • アドインが関数名を上書きしている ― カスタムアドインが同名の関数を定義していると競合することがあります。アドインを一時的に無効化して確認してください。
  • 名前の定義と衝突している ― 関数名と同じ「名前の定義」があると優先されます。数式 → 名前の管理 で確認してください。
  • ファイルが .xls (古い形式) で保存されている ― .xls では動的配列関数そのものが保存できません。.xlsx または .xlsm で保存し直してください。

まとめ

  • _xlfn. が付いて #NAME? になるのは、今使っている Excel ビルドがその関数をまだ実装していないため。
  • 2026 年で目立つのは、Microsoft 365 向けの新関数 (GROUPBY / REGEX* / PERCENTOF / TRIMRANGE / TRANSLATE / DETECTLANGUAGE など) や、公式適用先に Excel 2024 / 2021 も含むがビルド差で使えないことがある関数 (PIVOTBY など) を含むファイルを、永続ライセンス版 Excel で開いたときに発生するケース。
  • まず ファイル → アカウント で自分のバージョンとビルドを確認し、最新に更新する。それでも解決しない場合は、作成元で値に固定して配る、代替式に書き換える、Microsoft 365 にアップグレードする、のいずれかで対処する。
  • xlsx の内部 XML では Excel 2024 の FILTER_xlfn._xlws.FILTER と保存されている。つまり _xlfn. 自体はエラーの記号ではなく「新関数の印」にすぎない。

この記事で使ったサンプルファイル

関連記事

Next Read

このあと読む記事

今の内容に近い記事から、次の1本と補助記事を続けて見つけられるようにしています。

Keep Exploring

このテーマをさらに探す

同じテーマの入口記事と更新記事を、一覧の形でまとめています。

コメント