『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.