- ベストアンサー
この表に自動データ表示させたい
以下のような表において、上記データーテーブルから下表に番号入力すると以下のデータが自動表示される方法を考えていませんが、上手く行きません。 使用関数はVLOOKUPなのかHLOOKUPなのかどちらを使えばよいのか中々、分かりません。 エラーばかり出て、ストレスを溜めております。セル参照方法、式をどうすればよいのかどなたか教えて下さい。 番 号 1 2 商品名 パソコン1 パソコン2 パーツ1 CPU CPU パーツ2 Mボード Mボード パーツ3 モニター モニター パーツ4 HDD HDD パーツ5 スキャナ スキャナ パーツ6 プリンタ プリンタ パーツ7 CD-ROM CD-ROM パーツ8 FDD FDD 番 号 No ←このセルに番号が入力されると 商品名 パソコンX PC番号、パーツ1~8が表示さ れるようにするには? パーツ1 … パーツ2 … パーツ3 … パーツ4 … パーツ5 … パーツ6 … パーツ7 … パーツ8 …
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
なるほど。#4さんのおっしゃるとおりなら、私の数式は下記です。 Sheet2のB2に =INDEX(Sheet1!$B$3:$D$10,ROW()-1,MATCH($B$1,Sheet1!$B$1:$D$1,0)) これを行数分下までコピーします。 VLOOKUPはわかり易くていいのですが、表全体が大きくなればなるほど パフォーマンスが低下します。 Excelは表の左上から右下までなめるようにして検索するのだと思います。 上のように、INDEXとMATCHIを組み合わせると、 処理に数分かかるような大きな表でも1秒もかからずに再計算されます。
その他の回答 (4)
- tresbien
- ベストアンサー率51% (51/99)
多分こう言う事かと思いました。 第一の表がsheet1にあり、番号も例のように1、2と規則的に並んでいるわけでもなくもう少しデータ数も多いとしますと、例えば A / B / C / D 1 番 号 3 1 2 2 商品名 パソコン3 パソコン1 パソコン2 3 パーツ1 CPU3 CPU1 CPU2 4 パーツ2 Mボード3 Mボード1 以下省略 : 8 Sheet2のセルB2には次のように入力します。 =VLOOKUP(A2,Sheet1!$A$1:$D$10,MATCH($B$1,Sheet1!$A$1:$D$1,0),FALSE) 下方向にオートフィルでコピーしてB3以下を入力してください。 A / B 1 番 号 「1」を入力すると 2 商品名 「パソコン1」と出る 3 パーツ1 「CPU1」と出る 4 パーツ2 「Mボード1」と出る : つまり、セルB1に入力された番号が元のデータベースの番号行の何列目の番号であるかを調べて、その数字でVLOOKUP関数の返す列位置を決めているわけです。
#2です。 http://okweb.jp/kotaeru.php3?q=1208955 こちらの質問をまだ締め切っていませんね。 ここでも書かせていただいたように、ご自分の状態をきちんと説明できることで 半分は解決したも同然です。 がんばって説明してください。
まず、入力されているセル番地を教えてください。 A1から右に 番号 1 2 A2から下に 商品名 パーツ1 パーツ2 パーツ3 パーツ4 パーツ5 パーツ6 パーツ7 パーツ8 B2から下に パソコン1 CPU Mボード モニター HDD スキャナ プリンタ CD-ROM FDD C2から下に パソコン2 CPU Mボード モニター HDD スキャナ プリンタ CD-ROM FDD でいいのですか? そして例えば A14から右に 番号 NOを入力するセル、 A15から下に パーツ1 パーツ2 パーツ3 パーツ4 パーツ5 パーツ6 パーツ7 パーツ8 で、B14に1と入力すると、 B15から下に CPU Mボード モニター HDD スキャナ プリンタ CD-ROM FDD と表示されればいいのですか? 2と入力しても同じ結果 CPU Mボード モニター HDD スキャナ プリンタ CD-ROM FDD ですね。 B15から下は、8行と決まっているのですか?
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
=Vlookup(商品名のセル,上表のパーツ1からの範囲,Noのセル,FALSE) 商品名のセル参照は列を固定($A10とか) 上表の範囲参照は列行固定($A$1:$C$8とか) Noのセル参照は行列固定($B$10とか)