• ベストアンサー

エクセル関数

vlookup関数でコードをリンクさせているのですが、数字(コード)は見た目は全く同じなのに、一致しないのです。セル書式設定も同じようにしているのですが・・・式も間違えていないのですが、新たに同じコード(数字)を手打ちで入れなおせば、リンクはされるみたいです。どうしてでしょうか?よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jun9031
  • ベストアンサー率42% (51/120)
回答No.5

数値を他のところから取り込んでいることが原因です。 セルを数値にしても反応しません。 数値を再入力するのではなく、数値のセルをダブルクリック(再度決定ということ)をすれば読み取れるはずです。 そのようなデータを一括で修正する手はいろいろとあるのですが、例えば、数値のデータをすべてVALUE関数でひっぱります。それを数値コピーすればすべてダブルクリックしたのと同じ状況になります。 具体的には、A列に読み取りたい数値がある場合、B列にVALUE(A○)をひっぱります。 で、B列をコピーして数値を貼り付けを行い、その数値をVLOOKUPすればうまく読み取れます。

miechin
質問者

お礼

回答ありがとうございました。そのとおりやってみたらできました。セルの書式設定からでは、数値にすることができませんでした。このような関数があることがわかりましたので勉強になりました。

その他の回答 (5)

  • comv
  • ベストアンサー率52% (322/612)
回答No.6

こんばんは >新たに同じコード(数字)を手打ちで入れなおせば、 >リンクはされるみたいです 入れなおす前が  数字(文字列) 入れなおした後が 数値 になっているものと思います 検索先を数字から数値に直すのが確かだとは思いますが試しにそのままで 数式を  =VLOOKUP(A1,範囲,2,0) → =VLOOKUP(A1&"",範囲,2,0)  のようにしてみて下さい

  • aieeen
  • ベストアンサー率12% (7/54)
回答No.4

こんにちわ 別のアプリケーションからデータを取込んで無いでしょうか? 可変長と固定長も考えられます。 通常販売されているアプリからテキスト等にデータを落とすと固定長になっていますよ。 エクセルの新たに(数字)を手打ちする個所でF2を押してみて、カーソルが決まったスペース分あるなら固定長です。エクセルは可変長ですので、一致しません。 固定長を可変長に直す関数があったと思います。(空白を取っちゃうやつ、=TRIM)こんな感じの、これでどうでしょうか?

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.3

こんにちは。maruru01です。 セルの表示形式が「標準」や「数値」で入力した数値は、入力後に表示形式を「文字列」にしても、見た目は左揃えになりますが、文字列としては扱われません。 このような既入力データを「文字列」にするのは、以下の方法で出来ます。 ・文字列にしたいデータの範囲を選択する ・メニューの[データ]→[区切り位置]で区切り位置指定ウィザードを起動する ・[次へ]→[次へ]で3/3ページへ ・[列のデータ形式]で「文字列」を選択して[完了] なお、逆に「文字列」→「数値」にする場合は、上記方法で[列のデータ形式]を「標準」にして下さい。

miechin
質問者

お礼

回答ありがとうございます。そのとおりやってみたらできました。単純にセル書式以外で、文字列・数値に直す方法がわかりました。勉強になりました。

  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.2

コードが文字列になっていませんか。vlookupはたしか、完全一致のセルを参照するはずですので、文字の1と数値の1では違うので、数字を入れたときに数値の1になり、参照されるのでは。全角数字と半角数字の区別も難しいですよね。

  • happypoint
  • ベストアンサー率36% (521/1422)
回答No.1

オプション-計算方法 で、計算方法が「手動」になってないですか? あと、「式は間違えてない」とのことですが、 いちおう、提示されたほうがいいと思います。

関連するQ&A

専門家に質問してみよう