- ベストアンサー
Excel複数条件からのデータ抽出方法と注意点
kagakusukiの回答
- kagakusuki
- ベストアンサー率51% (2610/5101)
今仮に、Sheet2の B1セルに「ホテル名」、 C1セルに「プラン名」、 D1セルに「部屋番号」、 E1セルに「価格」、 という具合に項目名が並んでいて(B1、C1、D1は空欄にはしないで下さい)、Sheet2の2行目から下方に向かって、 B列に各ホテルの名称データ、 C列に各プランの名称データ、 D列に各部屋の番号のデータ、 E列に価格のデータ、 という具合に各データが入力されていて、 ドロップダウンリストでSheet1の A1セルにホテル名、 A2セルにプラン名、 A3セルに部屋番号を入力すると、 Sheet1のA4セルに価格が自動的に表示されるものとします。 ここでは、Sheet3のB列、C列、D列、G列、H列、I列を作業列として使用する方法を述べます。 又、この方法では、Sheet2に入力されているデータは、ホテル毎にまとまって入力されていなくても良く、(例えば上から、「ホテル2のプラン3」、「ホテル5のプラン7」、「ホテル3のプラン5」、「ホテル1のプラン1」、「ホテル4のプラン6」、「ホテル2のプラン2」の順番でも可) 異なるホテルに、同名のプランや部屋番号が存在していても、正しい価格が表示されます。 まず、Sheet2の B1セルとG1セルに「ホテル」、 C1セルとH1セルに「プラン」、 D1セルとI1セルに「部屋」、 と入力して下さい。(G1、H1、I1は空欄にはしないで下さい) 次に、B2セルに次の数式を入力して下さい。 =IF(Sheet2!$B2="","",IF(COUNTIF(Sheet2!$B1:$B2,Sheet2!$B2)=1,COUNT($B$1:$B1)+1,"")) 次に、C2セルに次の数式を入力して下さい。 =IF(AND(Sheet2!$B2=Sheet1!$A$1,SUMPRODUCT((Sheet2!$B$1:$B1&Sheet2!$C$1:$C1=Sheet1!$A$1&Sheet2!$C2)*1)=0),COUNT(C$1:C1)+1,"") 次に、D2セルに次の数式を入力して下さい。 =IF(AND(Sheet2!$B2=Sheet1!$A$1,Sheet2!$C2=Sheet1!$A$2,SUMPRODUCT((Sheet2!$B$1:$B1&Sheet2!$C$1:$C1&Sheet2!$D$1:$D1=Sheet1!$A$1&Sheet1!$A$2&Sheet2!$D2)*1)=0),COUNT(D$1:D1)+1,"") そして、Sheet3のB2~D2の範囲をコピーして、同じ列の3行目以下に、Sheet2のリストの行数を上回るのに充分な回数だけ貼り付けて下さい。 それから、Sheet3のG2セルに次の数式を入力して下さい。 =IF(ROWS($1:1)>COUNT($B:$B),"",INDEX(Sheet2!$B:$B,MATCH(ROWS($1:1),$B:$B))) 次に、H2セルに次の数式を入力して下さい。 =IF(ROWS($1:1)>COUNT($C:$C),"",INDEX(Sheet2!$C:$C,MATCH(ROWS($1:1),$C:$C))) 次に、I2セルに次の数式を入力して下さい。 =IF(ROWS($1:1)>COUNT($D:$D),"",INDEX(Sheet2!$D:$D,MATCH(ROWS($1:1),$D:$D))) そして、Sheet3のG2~I2の範囲をコピーして、同じ列の3行目以下に、最も部屋数の多いプランにおける部屋数を、上回るのに充分な回数だけ貼り付けて下さい。 次に、Sheet1のA1セルを選択してから、次の操作を行って下さい。 メニューの[データ]をクリック ↓ 選択肢の[入力規則]をクリック ↓ 現れた「データの入力規則」ウィンドウの「設定」タグをクリック ↓ 「入力値の種類」欄をクリック ↓ 現れた選択肢の中の「リスト」をクリック ↓ 現れた「元の値」欄の中に以下の数式を入力 =INDIRECT("Sheet3!G2:G"&COUNTIF(INDIRECT("Sheet3!G:G"),"><")) ↓ 「データの入力規則」ウィンドウの[OK]ボタンをクリック ※回答欄に入力可能な文字数を超えたため、少々規則違反になりますが、後半は次の回答に掲載させて頂きます。
関連するQ&A
- 複数条件による複数判定
excelにて、複数条件による複数判定をしたいのですが、 A1セルに"A"又は"B"又は"C" と入力された場合は A2セルで入力規制リストによりB1~B5を選択可。 A1セルに"D"又は"E"又は"F" と入力された場合は A2セルで入力規制リストによりB6~B10を選択可。 といった関数が組めずに困っています。 どうぞ宜しくご教授願います。
- ベストアンサー
- オフィス系ソフト
- エクセルでデータ→集計?入力規制?
エクセル2003です。A1のセルに、データ→入力規制→リスト→元の値のところに、りんご・バナナ・みかん・ぶどう等を選択して使用しておりますが、B1のセルに、金額まで自動で表示したい場合はどうすればよいですか?例えば、りんごを選択するとB1に100・バナナは200など。
- ベストアンサー
- オフィス系ソフト
- エクセルで条件に合わせて複数データを抽出したい
シート1に基本データ(基データ)があり、シート2のセル内に条件を入れて、該当のデータをシート1から引っ張りたい。 具体的には、シート1に基本データ ナンバ- 1 1 2 2 2 3 4 4 4 該当データ A B C D E F G H I シート2に 条件内容 1を入れてA B (複数データ) 2を入れてC D E 3を入れてF -----と、こんな具合になりたいのですが? VLOOKUP は複数の抽出なので駄目でした。
- ベストアンサー
- オフィス系ソフト
- Excelで複数の条件でデータを抽出したいのですが上手くいきません(ToT)
Excelで複数の条件でデータを抽出したいのですが、どうしても上手くいかず、質問させていただきました。 ナガシマスパーランド ナガシマスパーランド(三重県) ナガシマスパーランド(三重 東京ディズニーランド 東京ディズニーランド(千葉県) 東京ディズニーランド(千葉 ハウステンボス ハウステンボス(長崎県) ハウステンボス(長崎 ・ ・ ・ といったデータがあるのですが、この中から、 ナガシマスパーランド(三重県) 東京ディズニーランド(千葉県) ハウステンボス(長崎県) と、県名が「()」(←半角カッコの始めと終わり)で囲まれているデータのみを抽出し、別の行にそれらのデータを貼り付けたいのですが、 下記URL↓ http://dreamy.boy.jp/tec3_16.htm のやり方等を試しても、どうしうてもうまくいきません(ToT) (「該当なし」と判断されてしまうのでしょうか、検索条件範囲に項目名と「(」と「)」を含むセル範囲を選択しても、結果は、一つもデータが表示されない状態が返されてしまいます。) 「(」と「)」の2つの文字列を含むデータのみを抽出するには、どうすればよいのでしょうか? 関数を使えばいいのでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセルの条件に合うデーターを抽出する関数、
エクセルのリスト1の住所録の情報から、リスト2に、東京都の人のデータのみを抽出する関数、また、何も記載がないセルは、そのままにしておく。
- 締切済み
- Excel(エクセル)
- 下記のようにExcelのSheet1にデータが入力されているとします。
下記のようにExcelのSheet1にデータが入力されているとします。 (セルは「」で区切ります。)※添付ファイル参照 ----------------------------- A、あ、1、a、2300 A、あ、2、b、2500 A、い、3、c、2300 B、あ、4、d、2900 B、い、5、e、3100 ----------------------------- ※左から、列名:種別1、種別2、製品コード、製品名、価格とします。 このリストを使用して、別シートに下記のような仕組みを作成したいです。 ---------------------------- 種別1選択、種別2選択、製品名選択 ■■この行にはリストボックスを作成し、 それぞれをリストから選択できるようにします。(添付ファイル参照)■■ ■■その下に、製品コードと価格を表示させたいです。■■ ----------------------------- 実現可能でしょうか。。。 すみません、教えてください。
- ベストアンサー
- その他MS Office製品
- エクセルのデータ抽出
会社で注文のあった業者のリストをエクセルで 作ってて450行くらいあります。 各項目には会社名や内容や価格などありますが その中には空白のセルや行もあります。 そこからA列に自分が抽出したい行に印をいれて フィルタをかけたところ、空白があるためか すべてを抽出できません。1行1行抜き出すのもいいのですが 今後、データも増えることを考えると 何かいい方法で抽出したいのですが、 どうしたらいいでしょうか? やはりマクロをつかうのでしょうか? すみませんがよろしくお願いいたします。
- ベストアンサー
- Mac
- エクセルで複数条件のデータ個数を出したい
仕事で電話アンケートの結果データを集計したいのですが、関数が分かりません。 エクセルのSheet1で下記のようなリストを作成しました。 日付 回答 6/28 A 6/28 B 6/29 A 6/28 A 6/30 A 6/29 C 6/30 D 6/28 C sheet2に下記のような集計をしたいのです。 6/28 6/29 6/30 A B C D 6/28の回答でAのデータはいくつというのは どのような関数を使えばよいのでしょうか? よろしくお願いします。
- 締切済み
- オフィス系ソフト
- エクセル データ抽出
よろしくお願いします。 セルA3:E13にこのようなデータが入っています。 G4:H4にデータを入力すると、G8:K12に自動的にデータを抽出したいのですがよい方法はありませんでしょうか。 セルG4:H4のデータを入力しなおすたびに、条件に合うデータをG8:K12に抽出したいです。 実際にはもっと膨大なデータが入り、増え続けます。 エクセルに弱いのでどなたかお力添えください。 よろしくお願いいたします。
- ベストアンサー
- その他(ビジネス・キャリア)
- 2つの条件をデータテーブルに照らし合わせデータを抽出する
2つの条件をデータテーブルに照らし合わせデータを抽出する 品番 顧客ID 価格 35894 312 A 35894 635 B 35895 215 C 別のシートに下記の価格表があります。 品番 312 215 635 35894 12,000 13,000 14,000 35895 5,000 6,000 7,000 価格欄のA, B, Cに入力すべき数式はどうなるでしょうか。 A=12,000 B=14,000 C=6,000 と表示されるのが求めている結果です。 どなたか教えて下さい。 IFとINDEXとMATCHを使って6つの顧客IDまでなら実現できましたが 顧客数は約50ありますので行き詰まりました。 ソフトウェアはエクセルで、Office 2000 SR-1 Professional版の ものを使用しています。 アドバイスをどうぞ宜しくお願いします。
- ベストアンサー
- その他(業務ソフトウェア)