アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルvlookup関数で、検索の型FALSEに該当する全てのデータを抽出するには、どうすればよいのでしょうか? emisensei

A 回答 (2件)

質問の意味を取り違えていればすみません。


検索する値が、元データに複数あり、その一覧表を別シートに作成したいということでしょうか。
Vlookup関数ではひとつしか検索しませんので無理です。
関数を使うのであれば
1、作業列を準備して、INDEX関数などを組み合わせます。
2、作業列を使わないのであれば、配列関数を作成します。
エクセルの機能を利用する。
1、オートフィルターが最も一般的ではないでしょうか。
2、別シートに表示したいのであればフィルターオプションを使います。
VBAを使う
やりたいことが、複雑であればVBAの力を借りれば何でも出来ますし
ボタン一つで実行されるの業務などでは便利です。
    • good
    • 0
この回答へのお礼

回答をありがとうございました。

ご指摘の通り、検索する値が元データに複数あり、その一覧表を別シートに作成したい、ということです。
やはりVlookup関数では、ひとつしか検索できないのですね。

VBAは全く経験がないので…、自信がありません。

INDEX関数または配列関数を教えていただけないでしょうか?

EMI

お礼日時:2010/08/10 11:19

仮に


データシート
 担当者 店名 電話番号 作業列
  A  あ電気 -3     2
  B  い電気 -4
  A  う電気 -5     4
  C  え電気 -7
・・・とあって
表示シート
 検索名
  A

 店名   電話番号
・・・
と準備してあるとして

データシートの作業列に
=IF(A2=表示シート!$A$2,ROW(),"") といれて下までコピィしておきます。
検索して表示したい行にのみ その行番号が表示されます。
作業列が目障りであれば、非表示にしてください。

表示シートの店名の下に
=IF(ISERROR(SMALL(データシート!$D:$D,ROW(A1))),"",INDEX(データシート!B:B,SMALL(データシート!$D:$D,ROW(A1))))
といれて右へコピィ、下へコピィします。
式はながいですが
空いているセルに
=SMALL(データシート!$D:$D,ROW(A1))
更に空いているセルに
INDEX(データシート!B:B,SMALL(データシート!$D:$D,ROW(A1)))
と入れて下へコピィしてみると、なんだといった感じで理屈がわかると思います。
    • good
    • 0
この回答へのお礼

ご回答下さり有難うございました。
難しいそうですが、おもしろそうでもあり、頑張ってやってみます。

Emi

お礼日時:2010/08/13 22:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す