• 締切済み

エクセルで並べ替えやフラグ立て

エクセル2007を使っています。 どれか一個でもいいですので、下記教えて下さい。 A列  B列        C列 品名   店        価格 レモン  八百屋      100 にんじん 八百屋    50  レモン  スーパー     120  すいか  八百屋      720 すいか  スーパー     800 レモン  スーパー     200 メロン 上記で Q1.A列の種類はレモン、すいか、にんじん、メロンの4種類ですが、この4という数字を出す方法を教えて下さい。 Q2 A列に含まれている個数順で レモン レモン レモン すいか すいか にんじん メロン の順で並べ替える方法を教えてください。 Q3 紐づいている種類でフラグを立てる方法 A列のレモンはB列で八百屋とスーパーと紐づいている A列のにんじんは八百屋としか紐づいていない A列のすいかは八百屋とスーパーと紐づいている A列のメロンは紐付けが無い このA列とB列の紐づけのある種類ごとにD列にフラグをたてる方法 例えば レモン  八百屋      100  ○ にんじん 八百屋    50   △ レモン  スーパー     120  ○ すいか  八百屋      720  ○ すいか  スーパー     800  ○ レモン  スーパー     200  ○ メロン                  × 

みんなの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

お示しのデータがシート1のA列からC列の2行目から下方に入力されているとします。 Q1について 次の式で種類を求めることができます。 =SUMPRODUCT((A2:A1000<>"")/COUNTIF(A2:A1000,A2:A1000&"")) Q2について Q3に答えるためにも作業列を例えばE列に作るとしてE2セルには次の式を入力して下方にオートフィルドラッグコピーします。 =IF(A2="","",IF(AND(COUNTIF(A$2:A2,A2)=1,COUNTIF(A:A,A2)=1),100000+IF(B2<>"",5000-ROW(A1),-ROW(A1)),IF(AND(COUNTIF(A$2:A2,A2)=1,COUNTIF(A:A,A2)>1), COUNTIF(A:A,A2)*100000,INDEX(E$1:E1,MATCH(A2,A:A,0))+COUNTIF(A$1:A1,A2)))) そこで並べ替えた表をシート2に作るとしてA2セルには次の式を入力してC2セルまでオートフィルドラッグコピーしたのちに下方にもオートフィルドラッグコピーします。 =IF(ROW(A1)>COUNTA(Sheet1!$A$2:$A$1000),"",IF(INDEX(Sheet1!$A:$C,MATCH(LARGE(Sheet1!$E:$E,ROW(A1)),Sheet1!$E:$E,0),COLUMN(A1))=0,"",INDEX(Sheet1!$A:$C,MATCH(LARGE(Sheet1!$E:$E,ROW(A1)),Sheet1!$E:$E,0),COLUMN(A1)))) Q3について シート1のD2セルには次の式を入力して下方にオートフィルドラッグコピーします。 =IF(A2="","",IF(E2>=200000,"○",IF(AND(ROUNDDOWN(E2,-5)=100000,B2<>""),"△","×")))

noname#204879
noname#204879
回答No.1

「紐づいている」(コレ、Excel用語ですか?)の意味が理解できないので、Q1のみに回答。 添付図参照 =SUMPRODUCT(1/COUNTIF(A2:A8,A2:A8))

関連するQ&A