- ベストアンサー
Excel 複数条件該当データの別シート表示
Excelで、2つの条件に該当するデータのみ別シートに表示させる方法を教えてください。 Sheet1には、A列:地区 B列に所属 C列には氏名の表があります。 Sheet2に、該当する条件のものだけを表示させるようにしたいのです。 (たとえば、地区=東京かつ所属=総務部) この条件は、Sheet2のD列以降で指定する欄を設けたいと考えています。 Sheet1のデータ A列 B列 C列 地区 所属 氏名 東京 経理部 山田 大阪 経理部 松本 東京 総務部 加藤 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 一例です。 ↓の画像のようにSheet1に作業用の列を1列設けます。 Sheet1の作業列D2セルに =IF(COUNTBLANK(Sheet2!$A$2:$B$2),"",IF(AND(A2=Sheet2!$A$2,B2=Sheet2!$B$2),ROW(),"")) という数式を入れオートフィルで下へずぃ~~~!っとコピーしておきます。 Sheet2のD2セルに =IF(COUNT(Sheet1!$D:$D)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$D:$D,ROW(A1)))) という数式を入れ列方向・行方向にオートフィルでコピー! これでSheet2のA2・B2セルに必要項目を入力すると画像のような感じになります。 参考になりますかね?m(_ _)m
その他の回答 (1)
- hallo-2007
- ベストアンサー率41% (888/2115)
仮に、Sheet2が抽出の条件と表示で画像のようにしたとします。 Sheet2の名前のタブを右クリック コードの表示をクリックして VBエディターを起動 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$D$2" Or Target.Address = "$E$2" Then Sheets("Sheet1").Columns("A:C").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("D1:E2"), CopyToRange:=Range("A5:C5"), Unique:=False End If End Sub を貼り付けて閉じます。 D2セル、E21セルの内容を変更したら、希望のデータがA6~C6以下に表示されます。 詳しくは http://www.eurus.dti.ne.jp/yoneyama/Excel/filter3.htm http://www.eurus.dti.ne.jp/yoneyama/Excel/vba/vba_advancedfilter.html などを参考にしてください。
お礼
ありがとうございます。 今回は、関数だけで簡単に作成したかったので・・・ 今後の参考にさせていただきます。