ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Excel(エクセル)活用コミュのVLOOKUPが機能するセルしないセルがあります

  • mixiチェック
  • このエントリーをはてなブックマークに追加
sheet1に下記のように部課コード(英数5桁)と部名、課名が正式名称で表示されている100行ほどの表があります。
sheet2に同じ部課コードと略称の部課名が並んでおり、これをVLOOKUPで参照させ、sheet1の正式名称のセルに略称を上書きさせようとしています。

(sheet1)
A列    B列         C列
abc11    東京営業第1部   営業第1課

(sheet2)
A列    B列         C列
abc11    東京1       営1

sheet1のB1セルに、vlookup(a1,sheet2!$a$1:$c$200,2)と入力すると東京営業第1部のセルに東京1と上書きされます。ところが、この関数を下の行にコピーして行くと、間違えた内容が上書きされる箇所がところどころあり、例えば横浜営業第1部が福岡1など上書きされてしまい、原因がわかりません。

そもそもsheet1は別のプログラムから落としてきたデータ、sheet2は社内のwebに張ってあったExcelであり、関数を入力する以前に以下2つのことをしました。
 1.sheet1,2ともにセルの書式が文字列だったので標準に変更
 2.sheet1の部課コードは、見た目は英数5桁に見えるが、左右どちらかにスペース
   が入力され、5桁ではないセルがあるらしい。この場合trim関数がいいらしい、
   と聞き、A列にtrim("a")と入力。

全セルに関数を正しく読ませるにはどうしたらいいか、または、この場合、どういうキーワードで調べればいいのか教えてください。

Excelのバージョンは確か97だったかと思います。何卒宜しくお願いします。

コメント(10)

=vlookup(a1,sheet2!$a$1:$c$200,2)

検索の型が省略されて(いてtrueになって)います。
falseに設定してみてください。
excelのヘルプに、
”範囲の左端の列のデータは、昇順に並べ替えておく必要があります。並べ替えないと、正しく計算が行われません。”
って書いてありましたが、それが原因ではありませんか?

僕は正しく計算されないときは、INDEX関数とMATCH関数を組み合わせて対処しています。
単純なエラーが考えられます。

sheet2にあるデータはA列をキーに昇順にソートされていますでしょうか?
(もしも、ソート済であれば、失礼いたしました。別の方向から考えてみますね)
あっという間のご回答、ありがとうございます!

虎次さま
falseですね。明日出社して早速やってみます!falseの使い方をよく知らず、いつも省略していたんですが、やっぱり必要なんですねあせあせ

矢島敦さま
sheet1の100行ほどのデータは90行程昇順に並んでいるのですが、最後の10行ほどはランダムに並んでいます。明日、すべてを昇順に並べ替えてみます。INDEX関数とMATCH関数を組み合わせて対処というのはどうするのですか???素人質問でごめんなさい・・冷や汗
ぱぐ・・・さま
チカラ不足のためお名前が表記できず・・あせあせ ありがとうございますわーい(嬉しい顔)
sheet2は、少なくとも私が担当する地域(表の約半数である100行弱)は昇順に並んでいます。おそらく全て昇順ではないかと思うのですが、全て自分の眼で確認した訳ではないので、明日、ソートをしてみます!
解決しました!
虎次さま、矢島敦さま、ぱぐU"・・(ごめんなさいっ)さまにご指摘いただいたことを全てやってみたら、vlookupが正しい値を参照しました!

皆さまご指摘の通り、vlookupの関数式にfalseを入れていなかった結果、trueになっていたんですね。trueのままA列を昇順にするか、または昇順せず関数式にfalseを入れるかのどちらかにしなくてはいけなかったようです(大丈夫でしょうかあせあせ

古いバージョンのExcelではヘルプを見ても意味がよく分からなかったんですが、いま帰宅して家のpcでヘルプを見たら、とっても分かり易く解説されていることも発見!
色々ためになりました。本当にありがとうございましたうまい!
解決されたようでなによりです。
検索値の完全一致が前提のvlookupを組む場合は、
検索の型はfalseにしておいた方が間違いが起こりません。

ちなみに、falseではなく0でも意味は同じなので、私は通常は0で指定してます。
今回の式ならこんな感じですね。
=vlookup(a1,sheet2!$a$1:$c$200,2,0)
…あ、当然ヘルプに書いてあったかな(汗>0で指定
>0
データの昇順ソートしてないとか
あ。足りないのか…
虎次さま
0でfalseの代用ができるとこと私のpcのヘルプには載っていませんでした。こちらの方が簡単ですね!これからは必ず入れるようにしますうまい!

なおみすねーくさま
データ昇順されてなかったんです。必要だったんですね。これで覚えましたわーい(嬉しい顔)

皆さまのおかげで行き詰まっていた仕事がすっきり解決できました。本当にどうもありがとうございました。今後もお知恵お借りしたいときがあるかと思いますが、そのときにはまた宜しくお願いします!!

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Excel(エクセル)活用 更新情報

Excel(エクセル)活用のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。