匿名質問者
匿名質問者匿名質問者とは「匿名質問」を利用して質問した質問者。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら

エクセル関数・優先順で検索結果を返したい。


以下のようなデータがあります。
※あああ→住所、A/B→広告有無のフラグ(Bが広告なし)
※一つの住所に対しA/Bが共存するのは、異なる時期データ混在のため(ただし時期データはなし)

あああ A
あああ B
いいい A
いいい B
ううう A
えええ B

このデータから、住所ユニークで、AかBを取得したいのですが、ABの両方がある場合はAを優先して返すようなエクセル関数はありますか?
要は、住所毎に、広告経験の有無をつけたいです。

住所 返り値
あああ A(A/BからAを返したい)
いいい A(A/BからAを返したい)
ううう A(Aしかないから、Aが返る)
えええ B(Bしかないから、Bが返る)

vlookupだと、データの並び順次第で、"あああ"や"いいい"にBが返ってきてしまいます。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2017/06/02 18:31:49
  • 終了:2017/06/09 18:35:04

ベストアンサー

匿名回答3号 No.3

匿名回答3号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/04 23:27:25

データの追加が必要ですが、
A列:住所
B列:フラグ
C列:新たに追加 、2行目なら=if(B2="A",A2,"")

検索住所がある場所をe5とすると
=IF(COUNTIF(C:C,E5)>0,"A",IF(COUNTIF(A:A,E5)>0,"B",""))
でできると思います。

匿名回答3号

普段使わないので忘れていました。
excel2010以降でしたら
C列無しで、

=IF(COUNTIFS(A:A,E5,B:B,"A")>0,"A",IF(COUNTIF(A:A,E5)>0,"B",""))
でできると思います。

2017/06/05 02:27:20

その他の回答(2件)

匿名回答1号 No.1

匿名回答1号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/03 10:56:06

例を元に簡単なサンプルを作成して試してみましたが、AとBの両方がある場合は最後に一致した方(行番号の大きい方)が返ってくるようですので、予めデータを降順にソートした上で検索すれば良いのではないでしょうか。
そうすれば、AとBの両方があるときは必ずAが最後に一致するのでAを取得できます。

他2件のコメントを見る
匿名回答1号

ソート不可なのですね。失礼しました。
そのようなデータだと新たに列を作るのも難しそうですね。

2017/06/03 11:08:16
匿名回答1号

同じ組み合わせが2つ以上存在しない(例えば「あああ・A」の行は絶対に1件しかない)という前提なら、同じ住所が2件あるときはA(あああ・A)とB(あああ・B)の両方が存在していることになるのでAだと判断できると思います(countifを使用)。
1件しかないときはvlookupで取得すればOKです。

2017/06/03 11:18:05
匿名質問者

質問者から

匿名質問者2017/06/03 13:32:26

業務上の都合で、データの並び順に左右されない(ソートを気にしなくてよい)方法を探しています。

匿名回答2号 No.2

匿名回答2号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/04 18:47:25

特定条件の最小値・最大値を取得する方法
http://www.eurus.dti.ne.jp/~yoneyama/Excel/waza/max.html

匿名回答3号 No.3

匿名回答3号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/04 23:27:25ここでベストアンサー

データの追加が必要ですが、
A列:住所
B列:フラグ
C列:新たに追加 、2行目なら=if(B2="A",A2,"")

検索住所がある場所をe5とすると
=IF(COUNTIF(C:C,E5)>0,"A",IF(COUNTIF(A:A,E5)>0,"B",""))
でできると思います。

匿名回答3号

普段使わないので忘れていました。
excel2010以降でしたら
C列無しで、

=IF(COUNTIFS(A:A,E5,B:B,"A")>0,"A",IF(COUNTIF(A:A,E5)>0,"B",""))
でできると思います。

2017/06/05 02:27:20

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません