• 締切済み

エクセル初心者です。

エクセルシートで指定したセルの中から一番多い件数を順位を付けて表示したいのですが、 どの関数を使ってよいのか分かりません。 例えば、リンゴ      ナシ      リンゴ      ミカン      リンゴ      ミカン と並んだ中で どれが何件で1番 どれが何件で2番 ・・3番と集計したいのです。 関数にお詳しい方教えて下さい。お願いします。  

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 回答は出ていますので、参考程度で・・・ 仮に同順位があっても表示できるようにしてみました。 ↓の画像のように作業用の列を2列設けています。 作業列1のB2セルに =IF(COUNTIF($A$2:A2,A2)=1,COUNTIF(A:A,A2),"") 作業列2のC2セルに =IF(B2="","",RANK(B2,B:B)) という数式を入れ、B2・C2セルを範囲指定しC2セルのフィルハンドルでオートフィルでずぃ~~~!っと下へコピーしておきます。 そして、結果のE2セル(セルの表示形式はユーザー定義から 0位 としておきます)は =IF(COUNT(C:C)<ROW(A1),"",SMALL(C:C,ROW(A1))) F2セルは =IF(E2="","",INDEX(A$1:A$1000,SMALL(IF($C$1:$C$1000=$E2,ROW($A$1:$A$1000)),COUNTIF($E$2:E2,E2)))) このF2セルは配列数式になってしまいますので、 この画面からF2セルにコピー&ペースト → 数式バー内で一度クリック → 編集可能になりますので、Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 これを隣のG2セルまでオートフィルでコピー! G2セルの表示形式はユーザー定義から 0件 としておきます。 最後にE2~G2セルを範囲指定しG2セルのフィルハンドルで下へコピーすると画像のような感じになります。 参考になれば良いのですが・・・m(__)m

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

A2セルから下方に品名が入力されているとします。 作業列としてB2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(COUNTIF(A$2:A2,A2)=1,COUNTIF(A:A,A2),"") お求めの表をD,E,F列に表示させるとしてD1セルには順位、E1セルには品名、F1セルには件数と入力します。 D2セルには次の式を入力して横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(ROW(A1)>MAX($B:$B),"",IF(COLUMN(A1)=1,ROW(A1),IF(COLUMN(A1)=2,INDEX($A:$A,MATCH(LARGE($B:$B,ROW(A1)),$B:$B,0)),IF(COLUMN(A1)=3,COUNTIF($A:$A,OFFSET(D2,0,-1)),""))))

回答No.1

関数でリストを作るのは難しいのでリストがあらかじめある場合のみ 関数COUNTIFで個数を数える 関数RANKで順位を付ける リストがないならピボットテーブルが容易だと思います 項目名を「果物」とします データ - ピボットテーブルとピボットグラフレポート 行フィールドとデータフィールドともに[果物]をドラッグ&ドロップ 作成後、集計結果(データフィールド)のうちの1つのセルを選択して、降順で並べ替え 添付図はウィザードの3/3で[レイアウト]をクリックしている

sekuri
質問者

お礼

大変参考になりました。 ありがとうございます。

関連するQ&A

  • エクセルの関数について、質問させて頂きます。

    エクセルの関数について、質問させて頂きます。 現在カウントイフ関数を使ってアンケート集計用のシートを作っています。 そのアンケートの複数回答の設問の集計結果を出す際に、 Aという縦軸の1つのセルに りんご りんご,みかん,ぶどう みかん,ぶどう ぶどう このような形で出てきているデータを りんご2件 みかん2件 ぶどう3件 以上のように集計したく、 =COUNTIF(A2:A50000,AN9) ※AN9にはりんごと入力されています 上記の式で計算をしているのですが、 実際に出てくる結果は りんご2件 みかん1件 ぶどう1件 上記のように、最初の部分だけしか読まれずに 結果が出されてしまいます。 ~~を含むといった形で指定出来ればと思うのですが、 調べても結果が見つからないので、どうかお力をお貸しください。 よろしくお願いいたします。

  • Excelで特定のセルの個数を集計してグラフにしたい

    Sheet1のA列に りんご みかん みかん さくらんぼ パイナップル りんご : のようなデータが入力されています。 Sheet2にSheet1の 「りんご」のセルの数 「みかん」のセルの数 「さくらんぼ」のセルの数 「パイナップル」のセルの数 : の集計をしたいのですが、Sheet2に「りんご」「みかん」「さくらんぼ」「パイナップル」を手入力やSheet1からコピーせずに、関数だけで集計することはできないでしょうか?

  • エクセルの集計

    エクセルの集計で質問します。 A列に「りんご」か「みかん」が入っている行を集計したいと思っています。    A 1 りんご、なし 2 みかん、もも 3 りんご、みかん 4 ぶどう 5 りんご 6 ぶどう、もも 7 みかん という表があると、期待している集計値は「5」なのですが、どのような関数を使えばよいかわかりません。 よろしくお願いします。

  • エクセルの関数について

    エクセルの関数について困っております。 関数については、詳しくありません。お力をおかし下さい。 添付にある図の、sheet1 のリンゴ ミカン ブドウ を sheet2 の別のセルに、リンゴ.ミカン.ブドウと入力した際、その下に記入してある11111111111111 の数字を、同じように反映する為には、sheet2 のリンゴ等の文字の下には、どの様な関数を入れればよいですか? 関数でそこまで出来るのでしょうか? よろしくお願いします。  

  • 表の集計

    エクセルで A1 りんご B1 100 A2 みかんB1300 E1 りんご F1 200 E2 みかん F1300 とあります。 この、りんごと書かれているセルの横のセルの集計をしたいのですが 関数でできますか? また、この表が、2シートにわたってあるのですが 片方のシートの端にまとめて表を作りたいと思っています 何か、方法ないですか?

  • エクセル データの集計表を作成する

    シート1のデータを集計してシート2に結果を出したいのですが、関数を使いどのように行えば良いかお教えいただけますでしょうか。 りんご  A みかん  A りんご   りんご  B ぶどう   このようなデータがあり 1.その中にある項目を自動で一つ出し、 2.それぞれ済の分を集計して・・・ Aの集計 商品   個数 りんご   1 みかん   1 ぶどう   0 というようにしたいのですが、どなたかお答えいただけますでしょうか?よろしくお願い致します。

  • Excelで困ってます。

    会社で売上表を作って集計をしていますが、どうもうまくいきません。 どなたかお教えいただけないでしょうか? 売上表はこんな感じです。 A列に売上げ商品の一覧があります。 (例えば、りんご・みかん・メロン・りんご・桃・・・みたいな感じで100個ぐらい) もちろん同じ商品の重複もございます。 別シートに特定の商品リストがあります。 (例えば、りんご・みかんみたいな) 集計としましては、その日の売上商品の中で、別シートのリスト(上記の場合はりんごとみかん)と同じ商品だけを抽出し、その商品の隣の列(たとえばこの場合はB列)に「○」と表示させたいのです。 特に合計数を集計したいわけではありません。ただ○をつけたいだけです。 B1に試した関数は =IF(A1=シート2!$A$1:$A$2,"○","") です。 (この場合、シート2のA1からA2に特定商品のリストがあるとします) この関数だとエラーが出てしまいます。 マクロなどを使わずに、関数で解決できないでしょうか? よろしくお願いいたします。

  • エクセル データ集計について

    エクセルのデータ集計についてご教示下さい。 (1)まず、以下のような項目があるとします。 (重複は無し) りんご みかん ぶどう (2)次に以下のようなデータがあるとします。 (重複あり。順番はランダム) ぶどう みかん ぶどう そして(1)と(2)から以下のような集計結果にするにはどのような関数を使うと良いでしょうか? (|はセルの区切りと思って下さい) りんご | 0 みかん | 1 ぶどう | 2 以上よろしくお願いします。

  • エクセルでの集計に関して

    こんにちは。いつもお世話になっております。 例えばですが、以下のようなCVSのデータがあります。 (エクセルで開けます。) 昇順 降順に変更可能です。 これが、何週間分かあり、タブがあって日にちごとに見れますが、 30件ほどの品目の、200件ほどのデータが50件ずつにのみ表示されます。 4/1分データ    品名   売り上げ数   りんご1  100    りんご2  200    みかん1  300    みかん2   400    バナナ1  500             次の50件→ -------------------------------------------- 4/2分データ    品名   売り上げ数   りんご1  1000    りんご2  2000    みかん1  3000    みかん2   4000    バナナ1  5000   バナナ2  6000   アボガド  7000   いちご   8000     次の50件→      ↓続く これを、エクセルで下記のようにしたいのです。 ********************************************** ID  品名    4/1分集計 4/2集計  4/3集計  4/4集計  4/4集計~~ A   りんご1  100   1000    300 B   りんご2  200   2000    400  C   みかん1  300   3000    500 D  みかん2   400   4000    600 E   バナナ1  500    5000    700 D  バナナ2        6000    800 E  アボガド       7000    900 F  いちご       8000    1000 日にちによって当然、新たな項目、アボガドやいちごがあったりします。みなさんでしたら、最速で一番簡単に行う為にどうしますか? ちょっといそいでてお知恵をどなたか下さい! ご教授下さいますようお願い致します。

  • エクセルで同順位の値を表示する方法

    windowsXP Excel2003です sheet1に   A   B   C    D   E 1    10代  20代  30代  40代 …70代以上 2 1位 みかん なし  りんご もも 3 2位 りんご もも  もも  みかん 4 3位 なし  りんご みかん りんご 5 4位 もも  みかん なし  なし 上記のように年代ごとに30位まで表示させたいと 思っています。 元になるsheet2は    A   B   C  D   E        I       10代 20代 30代 40代 …70代以上 1 みかん 150  50  80  180        みかん 2 りんご 100  70  170  100        りんご 3 なし   50  200  30  20        なし 4 もも   50  130  170 250        もも 以上のように年代別の列が10代から70代以上まであり、 A列の果物の種類は500行ほどあります。 (すべて違うものです) =VLOOKUP(LARGE($B$9:$B$12,1),$B$9:$I$12,8,0) を使ってそれぞれ、1位、2位、3位…の果物の名前を 表示させたのですが、上記の式だと、下記のように 表示されてしまいます。    10代  20代  30代  40代 …70代以上 1位 みかん なし  りんご もも 2位 りんご もも  りんご みかん 3位 なし  りんご みかん りんご 4位 なし  みかん なし  なし この10代の3位と4位、30代の1位と2位のように同じ順位になるもので、 2番目にくる果物を正しく表示させたいのですが、どのような数式を 使ったらいいのか教えてください。 果物種類は500ほどあり、順位が同じになるものは5種類くらいに なることがあります。 10代から70代以上のこの表が3つあるので、関数でどうにかしたいと 思っています。 初めての質問なので分かりにくいところもあるかと思いますが、 よろしくお願いいたします。

専門家に質問してみよう