[[20251127101509]] 『VLOOKUP 参照元と先で表示形式の違い』(EIKO) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『VLOOKUP 参照元と先で表示形式の違い』(EIKO)

単純にVLOOKUPですが、
2つ別の資料があり(それぞれ別の人が作成)
例えば、190453012900 この数字をもとに答えを参照するため、

=VLOOKUP(A2,実績?@!$D:$E,2,FALSE)

とすると、#N/A エラーになります。

参照元・先の 190453012900 表示形式は、数値で設定されていますが、
参照元の数値をコピーして、実績?@のD列でフィルタで検索すると
参照元の数字の後ろに空白が入っていました。(見た目は入っていないのにコピペすると入る)

そのため 空白置き換えしましたが該当データなしとなったため、
参照元の数値の列を選択肢、 =SUBSTITUTEで
空白をなくし 表示形式は 数値 ユーザー定義で
###に設定したところ 参照できましたが50行のうち3つだけ
#N/Aとなります。

エラーとなった数値を参照先でフィルタで検索するとヒットしますが、
表示形式の負の数の表示形式がことなりました。

出来れば参照先の形式は変えずに解決したいのですが、
参照元の形式を変更するだけでは、難しいでしょうか。

< 使用 Excel:Excel2016、使用 OS:Windows11 >


 >=SUBSTITUTEで
 >空白をなくし

 文字列操作で返ってくるのは数値ではなく文字です
 例えば、A1に「12345a78」といれ
 他のセルに =SUBSTITUTE(A1,"a","") の結果は文字です
 これぐらいは自分で判断できない物でしょうか?

 =SUBSTITUTE(A1,"a","")*1
 =VALUE(SUBSTITUTE(A1,"a",""))
 など他の関数で数値にする手を加えないと
(気分) 2025/11/27(木) 11:27:02

気分さん
ありがとうございます。
>これぐらいは自分で判断できない物でしょうか?
 初心者のため判断できませんでした

参照したいのは全て数字です。
参照元と参照先のセルの書式設定 数値 で負の数の表示形式も完全に一致しないと
参照しないのですね。
(EIKO) 2025/11/27(木) 13:43:21


検索でヒットしない理由

ここで問題になっているのは、セルに入っている値のデータ型が数値なのか文字列なのか?
ってことではないですか?

データ型はtype関数で見ることができます。例:=type(A1)

表示形式の問題

ヒットして参照した上での話ですが、書式設定が同じでなければ、同じようには表示されません。
(ゆたか) 2025/11/27(木) 14:00:10


 > 参照元・先の 190453012900 表示形式は、数値で設定されていますが、
 > 参照元の数値をコピーして、実績?@のD列でフィルタで検索すると
 > 参照元の数字の後ろに空白が入っていました。(見た目は入っていないのにコピペすると入る)
 誤解があるようですが、最後に空白が入っているように見えるのは"数値"という表示形式のなせるわざであり、
 値として空白が入っているわけではありません。

 VLOOKUP関数では、"数値データ"であれば、どのような表示形式でも(カンマを表示したり円マークを付けたりしても)
 検索に影響はないと思います。

 重要なのはデータの型です。"数値データ"と"文字列データ"は一致せず、検索が思うようにできません。
 検索元と検索先のデータ型は合わせる必要があります。

 なお、セルの値が文字列データであるかどうかを判定するには、ISTEXT関数を使うと正確にわかります。
 (ISNUMBERは数値であるかどうか)
 既に指摘があったようにTYPEでもよいですね。
 参考にしてください。

(xyz) 2025/11/27(木) 14:07:38


 >初心者のため判断できませんでした

 SUM関数で試してみればすぐきがつくけど
 エクセル触り始めたころSUM関数で計算されないから違うと気がつきました

(気分) 2025/11/27(木) 15:18:59


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.