2016-03-30 11 views
0

私が達成しようとしているのは、テーブルからデータを検索して取得することです。しかし、問題は、テーブルを検索して検索テキストから配列を取得する関数を作成する方法がわかりません。テキストで検索し、その行のすべての値を見つける

写真を見て、私が達成しようとしていることを理解してください。私が欲しいのは、例えば「BMW」を検索すると、テーブルを検索して同じベンダーの行を検索します。

どのように私はこの問題を解決できますか?私はVLOOKUPを使用しましたが、1つのデータを取得します。 enter image description here

+1

あなたの例に示すCar Vendors列のフィルターを使用するだけではどうですか? – tigeravatar

答えて

2

は、これを取得するには、Ctrl + Shiftキー+ ENTERに入りました。

はあなたのメインデータと仮定すると(ヘッダ行を含む)A1:D6は、あなたがこの数式を使用することができている:G2はあなたが値を返すようにしたい車を持つセルである

=INDEX(A$2:A$6,SMALL(IF($A$2:$A$6=$G$2,ROW(A$2:A$6)-ROW(A$2)+1),ROWS(A$2:A2))) 

。式を入力して、あなたは右にドラッグすることができます: enter image description here

最後に、ちょうど一致するものがないところ空のセルを入れて、その周りIfError([that formula],"")を包みます。

(必要に応じて範囲を調整)

0

単純なマクロを使用して、ページのボタンにリンクすることができます。ベンダを入力しているセルにCriteria1を変更します。あなたは配列数式を使用することができます

Sub dataFilter() 
    ActiveSheet.ListObjects(*table name*).Range.AutoFilter Field:=1, _ 
    Criteria1:="B2", Operator:=xlFilterValues 

end sub 
関連する問題