• ベストアンサー

Vlookup関数について

Vlookup関数での質問です。 検索範囲内に日付表示の項目があります。元の表は日付表示になっていても、Vlookupの式で返したい値が日付の場合、式を入れたセルに、日付では表示されずシリアル値で表示されます。文字列の場合はそのまま文字列の表示となります。 これはエクセルの仕様なのでしょうか?シリアル値になっているものを表示形式の変更によって日付表示に直すしかないのでしょうか?

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

エクセルの関数は、「セルの値」を問題にする(参照も、返す結果も)ものです。セルには値以外の属性がたくさんあります。 一方エクセルの日付は(2009/10/10のような入力をすると)「セルの値」は、日付シリアル値でセット(保持)されてます。 だから検索の結果も日付のセルを持ってくる第3引数の指定なら、日付シリアル値が返る。そのVLOOKUP関数を入れたセルの表示形式を適当に設定しないと日付シリアル値そのもののまま。 これを変更するぐらいそんなに手間で無いでしょう。 {直すしかないのでしょうか」と、なんでこんな質問が出るのかな。

rian_2005
質問者

お礼

日付シリアル値ですね。勉強不足ですみません。 質問の文章が悪かったです。 変更することは手間ではありません。 わかりやすい回答ありがとうございました。

その他の回答 (1)

  • ASIMOV
  • ベストアンサー率41% (982/2351)
回答No.2

もしかして、 VLOOKUPの参照先のデータが表示は日付だけど、シリアル値で入っているセルと文字列で入っているセルが混在していると言うことでしょうか? であれば、そのセルのデータをシリアル値に統一してしまえばどうでしょう 仮に A列にその日付があるとしてB列に B1 =IF(ISNONTEXT(A1),A1,DATEVALUE(A1)) とするとB列がシリアル値の日付になりますので それをコピーして、「値貼り付け」でA列に上書きします 後はB列は削除してもOKです

rian_2005
質問者

お礼

混在しているわけではありませんが、ぜひ参考にさせていただきます。 回答ありがとうございました。

関連するQ&A