エクセル関数応用
「SUMIFSで動くのにXLOOKUPでエラー?」型不一致の関数別挙動

Excel関数の解説、関数サンプルと高等テクニック
公開日:2026-08-03 最終更新日:2026-08-03

「SUMIFSで動くのにXLOOKUPでエラー?」型不一致の関数別挙動


Excelにおける、数値と文字としての数字(以降は文字数字)の違いによって起こる不一致問題。



XLOOKUPで確認

例えば、VLOOKUP/XLOOKUPでは、検索値と検索範囲のデータ型(数値と文字数字)が一致していないと「#N/A」となる。

画像A列は、奇数は数値、偶数は文字数字。
この違いでXLOOKUPは検索値なしのエラーとなる。

SUMIFSで動くのにXLOOKUPでエラー? 型不一致の関数別挙動


XLOOKUPの解決方法

=XLOOKUP(D2,A:A,B:B)

この数式の解決方法としては、「数値」か「文字数字」のどちらかに統一すればよい。

=XLOOKUP(D2&"",A:A&"",B:B)
=XLOOKUP(--D2,--A:A,B:B)

これなら、検索値と検索範囲のデータの型(数値/文字数字)がどちらでも期待通りに一致してくれます。

SUMIFSで動くのにXLOOKUPでエラー? 型不一致の関数別挙動


SUMIFSではどうなのか?

では、COUNTIF/COUNTIFS/SUMIF/SUMIFSではどうなのか?代表としてSUMIFSで例示します。

=SUMIFS(B:B,A:A,D2)

この数式で問題なく条件通りに集計されます。
XLOOKUPとSUMIFSのこの挙動の違いは、分かりづらいし勘違いしやすい部分ですが、しっかりと認識してください。

SUMIFSで動くのにXLOOKUPでエラー? 型不一致の関数別挙動


SUMIFSの落とし穴

SUMIFSがデータ型(数値と文字数字)に関係なく条件集計してくれることは分かりました。
ですが、念のためにデータ型をどちらかに統一しておいた方が無難なのではないか。
そう考えたくなりますよね。

=SUMIFS(B:B,--A:A,--D2)
「この数式には問題があります。」

なんと、入力することも出来ない…

SUMIFSで動くのにXLOOKUPでエラー? 型不一致の関数別挙動

「なぜエラー?なぜ入力すらできないのか?」
SUMIFS(COUNTIF/COUNTIFS/SUMIF)の条件範囲や合計範囲には、生の「セル参照」しか指定できません。
--A:A や A:A&"" のような加工を加えると「セル参照」ではなく「配列の計算式」と判定され、構文エラー(入力不可)になります。


【まとめ】

Excelにおける「数値」と「文字数字」の不一致に起因するエラーや挙動の違いについて。

検索関数(XLOOKUP/VLOOKUP)の挙動
データ型を厳密に区別するため、型が一致しないと #N/A エラーになる。
数式側で解決するには &""(文字列化)や --(数値化)を用いて型を揃える必要がある。

集計関数(SUMIFS/COUNTIFS等)の挙動
条件判定時に型を自動変換して評価するため、型が混在していても正常に集計される。
安全のために数式内で型を揃えようとして --A:A などの演算加工を行うと、範囲の引数に「配列の計算式」が入ったと判定され、構文エラー(入力不可)になります。

Excelは関数の役割(検索か集計か)によって、内部の型評価や引数の受け取り方が全く異なる設計になっています。
単に「動く数式を組む」だけでなく、各関数の設計思想の違いまで深く把握しておくことが、潜在的な計算エラーを未然に防ぎ、誰が扱っても崩れない効率的な数式設計を可能にします。




同じテーマ「エクセル関数応用」の記事

REDUCE+VSTACKが遅い理由と解決策
HSTACKは速い?遅い?実際に試してみた結果
条件付きMEDIAN関数を作る|LAMBDA関数で汎用〇〇IFSを実現
複数列の直積(デカルト積、クロスジョイン)
フィボナッチ、トリボナッチ、テトラナッチ数列を1数式で作成
表データから複数条件による複合抽出 (横AND/縦OR)
配列を自在に回転させる数式
掛け算(*)を使わない掛け算|足し算(+)を使わない足し算
2段階の入力規則リスト作成:最新関数対応
VLOOKUP/XLOOKUPが異常なほど遅くなる危険なアンチパターン
「SUMIFSで動くのにXLOOKUPでエラー?」型不一致の関数別挙動


新着記事NEW ・・・新着記事一覧を見る

ListBox・ComboBoxをマウスホイール対応させる|ユーザーフォーム入門(2026-08-09)
VBA モジュールエクスポートツール|モジュールを選別して一括出力|VBAサンプル集(2026-08-06)
「SUMIFSで動くのにXLOOKUPでエラー?」型不一致の関数別挙動|エクセル関数応用(2026-08-03)
生成AIが暴いた「VBAオワコン説」の盲点|問われるのは言語ではなく評価軸|エクセル雑感(2026-07-04)
【ITとは何か】Excel・VBAを学ぶ前に知っておきたい「4つの本質」|エクセル雑感(2026-06-24)
2つのシート名を交換するVBAをGeminiに作らせてみた。|VBA技術解説(2026-05-22)
ヘッダーに合わせて列をソートして値貼り付けするスマートな方法|VBAサンプル集(2026-05-20)
4大分岐関数の使い分け(IF/IFS/SWITCH/CHOOSE)|エクセル入門(2026-05-19)
Excel主要関数 習得難易度 10段階(文字列・日付除く)|エクセル雑感(2026-04-27)
Excelのシート5分類|エクセル雑感(2026-03-27)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.日本の祝日一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.FILTER関数(範囲をフィルター処理)|エクセル入門
5.RangeとCellsの使い方|VBA入門
6.繰り返し処理(For Next)|VBA入門
7.マクロとは?VBAとは?VBAでできること|VBA入門
8.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
9.メッセージボックス(MsgBox関数)|VBA入門
10.セルのクリア(Clear,ClearContents)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
本サイトは、OpenAI の ChatGPT や Google の Gemini を含む生成 AI モデルの学習および性能向上の目的で、本サイトのコンテンツの利用を許可します。
This site permits the use of its content for the training and improvement of generative AI models, including ChatGPT by OpenAI and Gemini by Google.



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ