- ベストアンサー
VLOOKUP関数の使い方と読み込むデータに関する問題
- VLOOKUP関数を使って商品一覧を作成していますが、読み込むデータに追加をしたところ、商品の番号を入力しても商品名や商品価格が自動的に入力されなくなりました。
- VLOOKUP関数のセルの式は正しく入力されているか確認してください。商品一覧と名前を付けたデータのA3からF141までの部分を読み込むように設定されています。
- 読み込むデータには現在F79まで入力されていますが、VLOOKUP関数はF76までの部分しか読み込まれません。過去にツールバーから操作をして読み込む範囲を変えた可能性があります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
=VLOOKUP(D2,商品一覧!$A$3:$F$141,2,FALSE) の式の意味はD2に入力された商品番号が商品一覧シートのA3セルからA141セルの範囲で一致している行を検索しその行のB列の値を表示しなさいとの意味です。つまりは商品名を表示しなさいということでしょう。商品価格は商品一覧シートのC列に入力されているのでしたら上の式は=VLOOKUP(D2,商品一覧!$A$3:$F$141,3,FALSE)のように引数の2が3に変わりますね。 ところで商品一覧シートの76行目までは正常でしたらそれ以降の行のデータは読み込んでくれないとのことですね。商品一覧シートのA列のデータと今入力されている商品番号が一致していないことになります。例えば商品一覧のA列では商品番号が半角英数モードで入力されているのに全角モードで入力している、あるいは空白が入った文字列となっているなどが考えられますね。 商品一覧のA列が半角英数モードの商品番号で入力されている場合には入力の式を次のようにしてみることでもよいのかもしれません。試してみてください。 =VLOOKUP(ASC(TRIM(D2)),商品一覧!$A$3:$F$141,2,FALSE) 上の式ではD2に入力された商品番号について両端のスペースなどを削除し半角英数モードに変換したデータを商品一覧のA列で検索することになります。 なお、商品一覧シートでA列に商品番号、B列に商品名、C列に商品価格となっている場合にはE2セルに次の式を入力しF2セルまで横にドラッグコピーしたのちに下方にもドラッグコピーすれば良いでしょう。 =IF($D2="","",IF(COUNTIF(商品一覧!$A:$A,$D2),VLOOKUP(ASC(TRIM($D2)),商品一覧!$A$3:$B$141,COLUMN(B2),FALSE),"番号が見当たりません")) この式では商品一覧のA列に該当する商品番号が無い場合には番号が見当たりませんと表示されます。
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
>D列に商品の番号を入力する 非常によく起こる失敗は、「数字」で番号を記入しているケースです。 問題は、番号を記入するD列と、そして商品一覧シートのA列とで、「同じ数字の番号」に見えていても「数字と文字列」で違うデータが記入されているときに失敗します。 あなたが「具体的な番号」として、一体どんな数字を記入しているのかによって、適切な対応が異なります。 でも安全のために、次のようにして「文字列で統一」しておくと良いでしょう。 手順1: 商品一覧のA列を縦一列選択する セルの書式設定で文字列の設定を取り付ける 更にA列を列選択、データタブ(データメニュー)「区切り位置」を開始、そのまま次々送りウィザードの3/3画面で「文字列」にマークしてOKする 手順2: D列のセルを選択 セルの書式設定で文字列の設定を取り付ける 今まで記入してあったD列のデータは必ず削除する 改めて番号を記入する。
お礼
この度は、有難う御座いました。色々と勉強になりました。有難う御座いました。