- ベストアンサー
エクセルで特定グループを抽出する方法
- エクセルで特定の条件を持つグループを抽出する関数を探している。
- グループは6桁の数字で、構成員は0から4まで多様な種別がある。
- 特に、構成員が0と1、または1のみのグループを抽出したいと考えている。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
回答No.1の訂正です。 A1からデータがあるものでテストしてました。A2からの感じなので C2に =IF(A2=A3,"",IF(COUNTIF($A$2:$A$100,A2)-SUMPRODUCT(($A$2:$A$100=A2)*($B$2:$B$100=0)*1)=0,"",IF(COUNTIF($A$2:$A$100,A2)-SUMPRODUCT(($A$2:$A$100=A2)*(($B$2:$B$100=1)+($B$2:$B$100=0))*($B$2:$B$100<>"")*1)=0,ROW(A1),""))) 出したい列に =IFERROR(INDEX($A$2:B$100,MATCH(SMALL(C$2:C$100,ROW(A1)),C$2:C$100,0),1),"")
その他の回答 (1)
- kkkkkm
- ベストアンサー率66% (1742/2617)
#N/Aがあると計算できないので B列の式を =IFERROR(元の式,"") にして#N/Aを消してもらって 長くなりますが C1に =IF(A1=A2,"",IF(COUNTIF($A$1:$A$100,A1)-SUMPRODUCT(($A$1:$A$100=A1)*($B$1:$B$100=0)*1)=0,"",IF(COUNTIF($A$1:$A$100,A1)-SUMPRODUCT(($A$1:$A$100=A1)*(($B$1:$B$100=1)+($B$1:$B$100=0))*($B$1:$B$100<>"")*1)=0,ROW(A1),""))) として下にコピーで作業列を作ります。 結果を出したい列に以下の式を入れて下にコピーして試してください。 =IFERROR(INDEX($A$1:B$100,MATCH(SMALL(C$1:C$100,ROW(B1)),C$1:C$100,0),1),"")
お礼