- ベストアンサー
EXCEL 列内のデーターカウント
A列に 1 1 3 2 4 5 2 3 4 5 とデーターがあった時に、同一のデーターは一つとして、いくつのデーターがあるか数える関数はありますか? ここでは、 10個のデーターのうち同一のものを一つと数えると、全部で5つのデーターとなります。 よろしくお願い致します。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
データが、A1~A9 にあったとすると =SUMPRODUCT((1/COUNTIF(A1:A9,A1:A9))) または =SUM(1/COUNTIF(A1:A9,A1:A9)) 但し、2番目SUMの式は配列数式にしないといけないので 式確定の時、Enter ではなくて Shit + Ctrl + Enter です。 以上です。
その他の回答 (4)
- mu2011
- ベストアンサー率38% (1910/4994)
こんにちは、NO3です。 初心者の回答しました事、お詫びします。従来からのEXCELテクニックみたいでした。 参考URLを記載します。
お礼
回答頂きお返事が送れまた、追加で参考URLを教えて頂きありがとうございました。 参考URLに来場者数のところで説明がありました。大変参考になりました。
- taocat
- ベストアンサー率61% (191/310)
こんばんは。 No.2です。 SUMPRODUCTとSUMの配列数式の考え方は同じですが、要望によりSUMPRODUCTの式を説明します。 例えば下記のようなA列のデータのダブりを除いた人数をカウントするとします。 A 1 田中 2 上村 3 田中 4 上村 5 田中 6 大山 答えは、3人 提示式:SUMPRODUCT( 1/COUNTIF(A1:A6,A1:A6) ) 基本形:SUMPRODUCT(配列1,配列2,,,) SUMPRODUCTは配列同士の乗算の合計を求める関数ですが、提示式のように配列が1つしかない場合は下記のように、配列2が内部で作成されます。 配列1 配列2 田中 1/COUNTIF(A1:A6,A1) = 1/3 1 上村 1/COUNTIF(A1:A6,A2) = 1/2 1 田中 1/COUNTIF(A1:A6,A3) = 1/3 1 上村 1/COUNTIF(A1:A6,A4) = 1/2 1 田中 1/COUNTIF(A1:A6,A5) = 1/3 1 大山 1/COUNTIF(A1:A6,A6) = 1/1 1 で、配列1×配列2の合計 = 3 また、SUMの配列数式は上記の配列2がないだけです。 それからこの計算を見るとなぜCOUNTIFの逆数を使用しているのか理解できるのではないかと思います。 分からない点がありましたら再度質問してください。 以上です。
- mu2011
- ベストアンサー率38% (1910/4994)
ご要望の関数はないと思います。 以下の様な考え方では駄目でしょうか。 B列にカレント入力セル以前の同一データ判定する関数を設定して、B列をサマリーする方式で如何でしょうか。 (例) A列 B列 1行 1 =if(isblank(A1),,if(countif($A$1:A1,A1),,1)) 2行 2 =if(isblank(A2),,if(countif($A$1:A2,A2),,1)) 3行 1 =if(isblank(A3),,if(countif($A$1:A3,A3),,1)) 4行 =SUM(B1:B3) ↓ 1行 1 1 2行 2 1 3行 1 0 4行 2 以上
- machachara
- ベストアンサー率20% (2/10)
関数でなく、ピボットテーブルではだめですか?
お礼
早速の返答ありがとうございます。 さて、実際の使用するデーターが名簿を元に実際の合計を出そうと思ったのですが、例えば、同一の名簿内に、同姓同名の方がいるとしますと、 ピポットテーブルにて、左側に氏名、上にIDを入力しますと、真ん中にはその名簿内にある氏名の数が出てきて、統計欄に総個数になってしまいます。 この時、総個数ではなく、実際の人数を出すことは出来ますか? No.2「taocat」さんに教えていただきました、数式を使うと実際の人数は出るのですが、それを、ピポットテーブルで出来れば、便利なのですが。 よろしくお願い致します。
お礼
早速の返答ありがとうございます。 実際の使用するデーターにつきましては、NO.1「machachara」さんのところにも書きましたが、名簿にて考えていました。 ただ、数式は非常に便利で選択範囲をその都度やると出るのですが、ピポットテーブルで選択した時に、実際に個数が出ると便利だなと思いました。 二番目の「配列数式」は初めて知りましたが、奥が深いですね。よく分かりませんでした。ただ、一番目の式もEXCELの関数辞典を調べてみたのですが、なぜ、実際の個数が出るのかが分かりませんでした。 もし、お時間がありましたら、一番目の数式の意味をご教授して頂けると、勉強になります。 よろしくお願い致します。