• ベストアンサー

エクセル2003でCOUNTIFS

    A     B 1   カゴ   りんご 2   カゴ   りんご 3   棚    りんご 4   カゴ   みかん 問題:カゴには、何種類のフルーツが入っていますか? 答え:2種類 と、この答えをCOUNTIFS で出せることがわかったのですが、 2003年バージョンのエクセルだと、どのような数式になりますでしょうか? いろいろ調べたのですが、思ったより難しくて…やはり降参です(ToT) シンプルな数式で、どうにかできないでしょうか??

質問者が選んだベストアンサー

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

分かり易くは作業列を作って対応する方法です。 お示しのデータがA2およびB2セルの下方に入力されているとしてC2セルには次の式を入力して下方にドラッグコピーします。 =IF(COUNTIF(C$1:C1,A2&B2),"",A2&B2) 答えを例えばE2セルにカゴと入力するとしてその答えをF2セルに表示させるとしたらF2セルには次の式を入力します。 =IF(E2="","",COUNTIF(C:C,E2&"*"))

azi_pons
質問者

お礼

めっちゃ時間がたってしまいましたが(お礼が遅くなってスミマセン、汗)、なんとかかんとか、データ作ることができそうです。 ありがとうございました~(^^)/

その他の回答 (5)

  • boseroad
  • ベストアンサー率26% (149/558)
回答No.6

しもた、B列に入りうるフルーツは無制限ちゅうことね。ほいだらSUMPRODUCTでも作業列が必要になるし、かえって複雑カイキになるわな。 昨日はほとんど寝かかったとこでカキコして、まるっと勘違いしてもうた。すまんの。あとフォロー感謝。 せやな。ほかの回答者さんらの言うてはるとおり、作業列を使うほがシンプルになるわね。使わへんやり方も思いついたけど、関数を組み合わせないかんもの、ごちゃごちゃしたものになるわ。 わしは、学校の課題の匂いを感じたんで、ヒントだけや。そうでなかったのなら、これもすまんの。

azi_pons
質問者

お礼

ごていねいに有難うございます(^^) エクセルも奥深いですね、やはり。もっと勉強しないとです。 ありがとうございました!

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 Excel2003で「カゴに入っているのが何種類あるのか」を求めるのでしたら、SUMPRODUCT関数を使用しても、1つのセルだけに入力された関数では求める事は出来ませんので、どうしても作業列を使用しなければならないと思います。  今仮に、Sheet1のA2以下に容器の種類、B2以下に果物の種類が入力されているものとします。  又、Sheet2のA列を作業列として使用するものとします。  まず、Sheet2のA2セルに次の数式を入力して下さい。 =IF(OR(INDEX(Sheet1!$A:$A,ROW())="",INDEX(Sheet1!$B:$B,ROW())="",COUNTIF($A$1:$A1,INDEX(Sheet1!$A:$A,ROW())&"★"&INDEX(Sheet1!$B:$B,ROW()))),"",INDEX(Sheet1!$A:$A,ROW())&"★"&INDEX(Sheet1!$B:$B,ROW()))  次に、Sheet2のA2セルをコピーして、Sheet2のA3以下に(Sheet1のA列、B列にデータが入力される可能性のある最も下の行を上回るのに充分な回数だけ)貼り付けて下さい。  次に、カゴに入っているフルーツの種類の数を表示するセル(添付画像の例ではSheet1のD2セル)に次の数式を入力して下さい。 =COUNTIF(Sheet2!$A:$A,"カゴ★*")  これで、カゴに入っているフルーツの種類の数を表示させる事が出来ます。

azi_pons
質問者

お礼

画像までつけていただいて、ありがとうございます! できれば作業列は使いたくなかったのですが、やはり使ったほうが早いかもしれないですね。 やってみます~ありがとうございました!

  • boseroad
  • ベストアンサー率26% (149/558)
回答No.3

SUMPRODUCTで調べてみ?

azi_pons
質問者

お礼

たしかにSUMPRODUCTが鍵となりそうですねっ!

  • yosifuji20
  • ベストアンサー率43% (2675/6115)
回答No.2

少々ひねってこんな方法ではいかがでしょうか C列に =A2&B2 と言う中間式を入れます。 そしてD列に =COUNTIF(C2:C5,"カゴりんご") と言う式を入れれば目的の答が出ます。

azi_pons
質問者

お礼

なるほど、そういう方法があるんですね!試してみます!ありがとうございますっ!

  • minosennin
  • ベストアンサー率71% (1366/1910)
回答No.1

2003はDCOUNT関数なら使えるはずですね。やはり作業列を使う一例です。 DCOUNT関数は列見出しが必要です。次のように各列の1行目に名前をつけるものとします。 A: 容器 B:商品  C:容器・商品 D:順序 2行名以降が明細行です。 C列にA列とB列を結合します。  C2に=A2&B2 D列に例えば「カゴ・りんご」の組合せの第何番目かを求めます。  D2に=COUNTIF($C$2:C2,C2) C2、D2を下へ必要数ドラッグ 以上は前回の回答と同じですが、 DCOUNT関数は、余白のセルに条件を指定する必要があります。容器がカゴでかつ順序が1の場合次の並びで指定します。  容器 順序  カゴ  1 これをG1:H2に入力するものとします。  G1:容器  G2:カゴ  H1:順序  H2:1 答えは次の算式で求められます。  =DCOUNT(A1:D999,,G1:H2)

関連するQ&A