注目の話題
夫が大大大大大嫌いです。 どうすれば、少しは好きになれますか?
加害者が被害者に謝らないまま幸せになろうとしたら弊害が生まれるのは当たり前ですよね。二度と関わらない関係性ならともかく、最後まで関わりがある関係性で。
なぜ21世紀にもなっても、店やサービスは無人化しないのでしょうか?今だに有人のレジはあるし、今だに散髪屋は人間はやってるし、今だにホテルの受付は人間だし、今だに

エクセルで…。

回答5 + お礼5 HIT数 7224 あ+ あ-

悩める人( 37 ♂ )
13/05/18 00:55(更新日時)

エクセルで質問です…。

例えばセルA1~A20までランダムな数値が入力されています。

ここでA1~A20に入力されている数字から、2番目に入力されている回数が多い数値を求める関数式ってありますか??

1番多く入力されている回数を求める関数式は分かるのてすが、2番目、3番目を求める事は可能でしょうか?

ご回答宜しくお願いします。

No.1950518 13/05/17 00:21(悩み投稿日時)

新しい回答の受付は終了しました

投稿順
新着順
主のみ
共感順
付箋

No.1 13/05/17 07:53
サラリーマンさん1 

身近にエクセルを使いこなせる人っていない?

どうしてもエクセルを使いこなせる様になりたいのなら、

パソコン教室にでも通って見た方がいいかな。ヽ(´o`;

ここでの説明って難しいと思うから。
( ̄◇ ̄;)

No.2 13/05/17 10:29
通行人2 ( ♀ )

単純に「データ」「オートフィルタ」で並べ替えるのではだめですか?
数が多い順に並べかえて、その後、その2番目に多い項目だけ表示させれば良いかな、と。

No.3 13/05/17 10:43
通行人3 

2さんに同意。それが一番単純で早い。

No.4 13/05/17 12:21
お礼

レスありがとうございます。

身近にエクセルを使いこなせる人もおらず、スクールに通ってまで身に付けたいとは思ってなく、必要な関数式だけを知りたくて…ここでエクセルについてのスレを拝見して、解る人がいたら…と思い、質問させていただきました。

アドバイスありがとうございます。

No.5 13/05/17 12:32
お礼

具体的なレスありがとうございます。

フィルタをかけているのですが、データ量が膨大になってくると、フィルタをかけていても、今度はその表示された数を自分でカウントしなければなりませんよね??

スレでは、例としてA1~A20としましたが、1列で500以上の数値が並ぶ件数です…。
その数える作業を省略したくて、2番目、3番目に多い数値を一発でカウントしてくれる関数式があればな…と思い。

1番多い数値の個数を求めるには、COUNTIF(値,MAX値))で求める事が出来たのですが、2番目、3番目に多い数値とその個数も関数式で求められないでしょうか…?

No.6 13/05/17 12:34
お礼

>> 3 2さんに同意。それが一番単純で早い。 レスありがとうございます。

もう少し調べてみます。

No.7 13/05/17 17:10
通行人7 

例えば、
・A1からA500に値が入っている
・C1に頻値(←出てくる頻度)1位、C2に頻値2位、C3に頻値3位
・D1にC1の個数、D2にC2の個数、D3にC3の個数

とする場合、

【C1】
=MODE(A1:A500)

【C2】
=MODE(IF(COUNTIF(C1,$A$1:$A$500)=0,$A$1:$A$500))
この関数を確定する時、Enterキーだけ押すのではなく、CtrlとShiftを押しながらEnterを押す
すると関数が{}で囲われて
{=MODE(IF(COUNTIF(C1,$A$1:$A$500)=0,$A$1:$A$500))}
となります
これは 配列数式と言って、関数のそとに{}をつけても駄目
必ず CtrlとShiftを押しながらEnterを押す
間違ってEnterを押すと成立しないで違う値が出るので、その時はもう一度、関数バーをクリックしてから CtrlとShiftを押しながらEnter

【C3】 =MODE(IF(COUNTIF($C$1:C2,$A$1:$A$500)=0,$A$1:$A$500))
これも CtrlとShiftを押しながらEnterを押して
{=MODE(IF(COUNTIF($C$1:C2,$A$1:$A$500)=0,$A$1:$A$500))}
にする

【D1】
=COUNT($A1$:$A$500,C1)

【D2】
=COUNT($A1$:$A$500,C2)

【D3】
=COUNT($A1$:$A$500,C3)

ということで
A列に値
C列に頻値を1~3位
※4位以下を作るときは、COUNTIFのC列の参照セルを増やすと良いです
D列にC列の頻値の個数
が入る筈なんですがどうでしょう?

因みに、頻値が1(つまり、頻度が1の重複しない値)を参照したセルはエラーになるので、エラーが嫌ならIF関数で回避して下さい

関数に私の入力ミスが無ければ、これでできるのを確認しました

あと、MODE関数は、エクセル2010から名前が変わっているらしいですが、私のは古いのでMODEのまま

No.8 13/05/17 17:26
通行人7 

>>7
1つ忘れてました

同じ個数ある異なる数字が複数あった場合(150が4個、200も4個、など)は、おそらく先に(列の上方に)入力されている値が出てしまいます
エラーになるかも…?

ん~…

また考えてみます

分からなかったら、もう帰ってきません(笑)

No.9 13/05/18 00:50
お礼

>> 7 例えば、 ・A1からA500に値が入っている ・C1に頻値(←出てくる頻度)1位、C2に頻値2位、C3に頻値3位 ・D1にC1の個数、… 凄いです✨

教えていただいた関数式で、2番目、3番目と求める事が出来ました!

入力して正解の数値が出た時は、ちょっと感動しました。

英数字と記号を沢山使う関数式で、こちらにレスするのに面倒な作業になるのに、分かりやすく説明していただき、本当に有難うございます!

No.10 13/05/18 00:55
お礼

>> 8 >>7 1つ忘れてました 同じ個数ある異なる数字が複数あった場合(150が4個、200も4個、など)は、おそらく先に(列… これに関しては、同数の頻度の場合、セルの上段に入力されている数値が優先的に表示されてしまいましたが、でも一応、2番、3番目に頻度の高い数値を求める事が出来ただけでも満足です!

また何かエクセルに関してはスレ立てした際、またご教授よろしくお願いします!

投稿順
新着順
主のみ
共感順
付箋

新しい回答の受付は終了しました

質問掲示板の悩み一覧

悩みを投稿する

注目の話題

お悩み解決掲示板 板一覧