• ベストアンサー

エクセルで2つ以上の条件から値を抽出し、任意のセルに反映させる方法

A列にすべて異なる数値データがランダム入力されていて、B列に複数名の氏名が入力されている大きなデータがあります。(同一名の重複を含む。)B列から同一名の者を抽出した上で、A列にランダムに表示される数値のうち一番大きい数値をC列に反映させたいのですが、VBAなどで自動抽出は可能でしょうか?ご教示よろしくお願いします。 A    B    C 2 田中一郎 7 7 田中一郎 7 1 田中一郎 7 4 山本桂子 8 8 山本桂子 8 3 山本桂子 8

質問者が選んだベストアンサー

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

C1=MAX(INDEX(($B$1:$B$10=B1)*$A$1:$A$10,)) ★下にコピー

kenvvvvv
質問者

お礼

早速のご回答ありがとうございます。無事に抽出することができ助かりました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

第2行からデータが始まるとしてA2:B10に下記データがあるとして 2 a 12 7 s 7 2 e 2 3 a 12 5 d 5 1 s 7 12 a 12 3 a 12 4 d 5 配列数式ですが C2に =MAX(IF($B$2:$B$10=B2,$A$2:$A$10,0)) と入れてSHIFT+CTRL+ENTERの三つのキーを同時押しする。 この式をC10まで式を複写する。 結果は上記の通り。 >、VBAなどで自動抽出は可能でしょうか 一般にエクセルでは、処理の自由度は 関数式<VBA であって、やり方もVBAなら色々ありえる。 質問者がVBAの回答を現状のVBAの理解の程度から、全く受けつけないのか否か(またはVBAに限るのか)を、質問に書いて置けばよいのです。

kenvvvvv
質問者

お礼

ご回答ありがとうございます。VBAについては、説明不足ですみません。VBAの知識はあらかじめ記述されているものを、少し加工し使用することができる程度の初心者です。丁寧にご説明頂き、ありがとうございました。

関連するQ&A

  • Excel2010でシートAとシートBとの比較

    よろしくお願いします。 Excel2010を使用しています。 シートA(マスターデータ)とシートB(ランダムデータ)のリストを比較して シートAのデータからシートBのデータを取り除いたデータを抽出したいです。 シートA(マスターデータ) A列   B列 111111 田中一郎 222222 田中二郎 333333 田中三郎 444444 田中四郎 シートB(ランダムデータ) A列   B列 222222 田中二郎 444444 田中四郎 この場合、抽出したいのは 111111 田中一郎 333333 田中三郎 の2名です。 いろいろネットで調べてトライしてみたのですがなかなかうまくいきませんでした。 Excelは少し苦手ですががんばりますのでよろしくお願いします。

  • 条件抽出の方法について教えてください。

    以下の家族名簿から代表者だけ抽出するにはどうしたらよいのでしょうか?以下のテキストファイルの場合、1項目の番号が家族番号になります。 member.txt 1,山田太郎 1,山田花子 1,山田凛 2,田中一郎 2,田中桂子 3,佐藤圭太 3,佐藤洋子 抽出結果を、 山田太郎,田中一郎,佐藤圭太としたいのです。 以上、わかる方がいらっしゃればアドバイスお願いします。

    • ベストアンサー
    • CGI
  • エクセルで、単位まで入力したセルから値のみを抽出

    A1に”2個”と入力してあります B1に”3人”と入力してあります そしてC1には”6個”と合計数字を出す事はできますでしょうか 基本的にはC1=A1*B1なのですが単位まで入力されている為数式に組み込めないのです 単にA1、B1の書式設定→ユーザー設定で”個”や、”人”を最後に付け加えれば 数値のみを入力すれば単位が表示され、単にC1=A1*B1と数式を入力すればいいのはわかっているのですが A1とB1には単位が様々なのです 決まっているのはセル内に入力された文字列の頭は数字で(何桁かは決まっていない) それ以降の文字列は漢字であったりカタカナであったり英語だったりします 頭の数字のみを数値として抽出し数式に組み込む事は可能でしょうか お分かりの方いらっしゃいましたらご伝授宜しくお願い致します

  • EXELで条件抽出をしたい…

    教えて下さい。EXELで作った下のような表(データ)がありその条件に合う人を抽出したいんですが…       A   B   C   D 1 Aさん 1234  2345  3456  4567 2 Bさん 6788  1234  5556  7778 3 Cさん 7788  7778  5443  7789 A~Dのセルにランダムに並んだ数字を入力している(ここでは、番号(1234)と入力している)人を関数を使い一発表示したいんですが。  A列だけに1234という数字を入力している人を抽出し、条件にあえば「○」という表示をできるようにはIF関数を使いできましたが、 AさんのA列、B列、C列全てを検索範囲に入れた、(たとえば「1234」と入力しているなら「○」等で表示(抽出)したいんですが…それができる関数を教えて下さい。列ごとしかできないのか…??? 分かりにくいですか? (^_^; 宜敷お願いします。

  • excelでの条件抽出がうまくいきません

    excel2003を使用しております。条件抽出みたいなことをしたいのですが、うまくいきません。    A  B  C 1  6/1  北  山本 2  6/1  西  岡本 3 6/1 東 田村 4 6/1 北 長井 5 6/1 西 井出 6 6/2 北 田中 7 6/2 西 山本 8 6/2 西 田村 9 6/2 東 小池 10 6/2 南 松本 上記のようなデータがあります。 違う、シートに 6/1 北 山本・長井 6/1 西 岡本・井出 6/1 東 田村 6/2 北 田中 6/2 西 山本・田村 6/2 東 小池 6/2 南 松本 このようにまとめたいのですが、うまくいきません。ご教授宜しくお願いいたします。

  • エクセルで抽出条件に合う行を表示させるにはどうしたらよいですか

    抽出条件に合う行を表示(抽出)したいのですが、 どのようにしたらよいですか。 条件ですが、 下記の表が有ります。 A列には氏名、B列には今年度金額、C列には、前年度金額を入力しています。 抽出条件は、B列(今年度金額)が0でC列(前年度金額)が5,000以内の行を抽出したいです。 下記の表ですと、木村さんと上田さんと後藤さんと田中さんを抽出したいです。 B列=0 or C列 <=5,000という条件を抽出する方法を教えて下さい。 A B C 氏名 今年度金額 前年度金額 後藤 10000 5000 田中 1000 1250 佐藤 2000 10000 木村 0 3000 上田 0 1000

  • 別々の行で一致するセルの値を抽出する

       A    B 1  田中   山本 2  鈴木   佐藤 3  山本   奥田 この場合 A列とB列の両方に同じ文字がある時にC列にしるしが欲しい。もしくは別のシートにそのセルの値(文字)を反映させたい。 のですがなかなか数式が完成しません。IF関数?LOOKUP系? 誰か教えて下さい!

  • excelで条件に一致するデータ全てを抽出する方法

    現在、エクセル2003を使用しています。 A列・B列・C列にデータが入力されています。 ただし、空白セル(空白行)もあります。 A列に“@Name”とデータ入力がある場合 同じ行のC列の値を抽出したいと思います。 A列に@Nameは複数ありますが、C列の値は それぞれ違いますので、データの集計先はF列に 全て抽出をしたい。 なにか良い方法(VBAや関数)がありましたら 教えてください。

  • エクセルでランダムに抽出後、一つのセルにまとめる方法

    エクセル初心者です。 エクセルのシート1に A列の1行目~10行目にA~Jまでの文字が入力されています。 これをシート2の B列の1~100行目に シート1からランダムで抽出した3つ又は4つの文字を ACE DFG ・・・・ のように埋めるには、どのような式を入れればできるのでしょうか? 文字はだぶらないように抽出したいと思います。 文字はCAEのように、順番が逆になっても構いません。 むしろ時々逆になったりするほうが都合がよいです。 抽出される文字数も、3つだけでなく、ランダムで4つ抽出するときも あるようにしたいです。 オフィス2003を使用しています。 ご回答よろしくお願いします。

  • エクセル セルの結合について

    エクセルにてA列縦3行を結合してB列・C列は縦3行は結合せずにそれぞれ数値を入力してます。オートセルにてB列の数値を抽出後A列を再度抽出すると、A列は画面上では表示されているのですが、抽出が出来ません。どのようにしたらA列を抽出できるのでしょうか?ご存知の方教えてください。

専門家に質問してみよう