- ベストアンサー
エクセルでリストに対応するデータを別シートの表
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
単純に規則的に並んでいるだけなので、順番に取ってくる数式でもできますが。 とりあえずエクセルの基本の練習として、VLOOKUP関数を使ってみましょう。 表シートのB7には =IF($B$2="","",VLOOKUP(B6,一覧表!$B$3:$E$11,MATCH($B$2,一覧表!$B$2:$E$2,0),FALSE)) と記入、各セルにコピー貼り付けます。 #補足 表一覧の各室ABC欄には、とりあえずすべてデータが記入されているとします。 ご相談の言葉足らずで実際には空欄があったりするときは、状況に応じて上述の関数式を =IF($B$2="","",VLOOKUP(B6,一覧表!$B$3:$E$11,MATCH($B$2,一覧表!$B$2:$E$2,0),FALSE)&"") なんて具合にしてみたりなど、応用します。
その他の回答 (2)
- basic_gg
- ベストアンサー率50% (14/28)
あなたのやりたいことが見えません。 1)"参照したい"・"入力できるようにしたい"のどちら? 入力できるようにしたい"のならマクロしかないが、 入力する気はさらさらなさそうなので、 参照をつかって表示したいのでしょう。 2)Aを選択すると101の下の段に111、Bを選択すると222… 選択するものは A・B・C のどれか 1つ…… チョッと待ってください!! 102号室・103号室はどうなるのですか? 3階2階の各部屋はどうなりますか? ◎「表シート」をコピーしてSheetA・SheetB・SheetC を作るほうが簡単だと思います。 面倒な数式も必要ないし、 何か変更が必要なときは、入力できるし。
お礼
回答ありがとうございました。 お礼が遅くなり申し訳ございません。 1)についてですが、入力したものを参照したいという事だったのですが、伝わらなかったようで、申し訳ないです。 2)についてですが、各部屋すべてにデータが入るわけではありませんが(例101、203、302のようにです)なんとなくですが、数式を組み合わせたら入力できることは分かっていましたので、他の列はコピーすれば分かるだろうと思い省略しました。 文章で質問するのは難しいですね。 反省します。 時間を割いて回答して下さりありがとうございました。
- KURUMITO
- ベストアンサー率42% (1835/4283)
お示しの表シートがシート1に有って一覧表シートがシート2にあるとしたらシート1のB11セルには次の式を入力します。 =IF($B$2="","",IF(INDEX(Sheet2!$C$3:$E$11,MATCH(B10,Sheet2!$B$3:$B$11,0),MATCH($B$2,Sheet2!$C$2:$E$2,0))="","",INDEX(Sheet2!$C$3:$E$11,MATCH(B10,Sheet2!$B$3:$B$11,0),MATCH($B$2,Sheet2!$C$2:$E$2,0)))) その後にB11セルを選択してからD11セルまで右横方向にドラッグコピーします。 また、B11セルを選択してからコピーし、B9セルに貼り付けを行い、その後にD9セルまでドラッグコピーします。 同様にB11セルを選択してからコピーし、B7セルに貼り付けを行い、その後にD7セルまでドラッグコピーします。
お礼
回答ありがとうございます。 お礼が遅くなりまして申し訳ございません。 コピーして、シート名を変えて試したところ、やりたいことができました。 No.1で回答して下さった方と少し数式は違いましたが、同じように作業出来て、とても勉強になりました。 時間を割いて回答してくださってありがとうございました。
補足
回答ありがとうございます。今、補足に書いて下さったの数式をコピーして試してみたところ、思った通りに動いていました。 それぞれの関数は使ったことがあるのですが、合わせ技まで持ち合わせていませんで、大変勉強になりました。 書いて下さった下記の数式の =IF($B$2="","",VLOOKUP(B6,一覧表!$B$3:$E$11,MATCH($B$2,一覧表!$B$2:$E$2,0),FALSE)&"") 関数の引用で1つ1つの意味を確認したのですが、 まず、IF関数で、論理式が$B$2="" 真の場合"" 偽の場合VLOOKUP(B6,一覧表!$B$3:$E$11,MATCH($B$2,一覧表!$B$2:$E$2,0),FALSE)&"") 偽の場合のVLOOKUP(B6,一覧表!$B$3:$E$11,MATCH($B$2,一覧表!$B$2:$E$2,0),FALSE)&"") VLOOKUP(B6,一覧表!$B$3:$E$11,MATCH($B$2,一覧表!$B$2:$E$2,0),FALSE) までは理解ができたのですが、 最後の&""の部分が理解ができませんでした。 もしよろしければ、教えて頂ければ嬉しいです。