1237080064 添付の画像を参考にしたいです。

赤い部分に入るEXCEL関数を教えて欲しいです。
上位2位、下位2位で対策会議を行いたいです。

①良い実績 1位 =実際に入る関数
②良い実績 2位 =実際に入る関数
③悪い実績 1位 =実際に入る関数
④悪い実績 2位 =実際に入る関数

宜しくお願い致します。

回答の条件
  • 1人2回まで
  • 登録:2009/03/15 10:21:05
  • 終了:2009/03/22 10:25:02

回答(2件)

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692009/03/15 10:43:52

ポイント35pt

数式だと、

(35のところを実際のデータの最下行にしてください。)

E
12 =LARGE(E16:E35,1)
13 =LARGE(E16:E35,2)
14 =SMALL(E16:E35,1)
15 =SMALL(E16:E35,2)

参考

http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/max.htm#large

id:bu77

質問を間違えました。それぞれの順位の店舗名を表示させたいです。金額ではありませんでした。訂正し、お詫びします。

2009/03/15 11:33:01
id:SALINGER No.2

SALINGER回答回数3454ベストアンサー獲得回数9692009/03/15 13:03:45

ポイント35pt

難産でした。(自分のコメントで返って大変にw)

該当の値を「A店-青果」のように表示しています。

(店ごとの集計の順位がご希望の場合は、別シートにSUMで合計した店ごとの表を作れば同じことができます)

複数同じ値があるときは上の値を表示しています。

① E12の数式

=INDEX(C1:C100,LARGE(INDEX((E16:E100=MAX(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MAX(E16:E100)))) & "-" & INDEX(D1:D100,LARGE(INDEX((E16:E100=MAX(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MAX(E16:E100))))

② E13の数式

=INDEX(C1:C100,IF(COUNTIF(E16:E100,MAX(E16:E100))=1,LARGE(INDEX((E16:E100=LARGE(E16:E100,2))*ROW(E16:E100),),COUNTIF(E16:E100,LARGE(E16:E100,2))),LARGE(INDEX((E16:E100=MAX(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MAX(E16:E100))-1))) & "-" & INDEX(D1:D100,IF(COUNTIF(E16:E100,MAX(E16:E100))=1,LARGE(INDEX((E16:E100=LARGE(E16:E100,2))*ROW(E16:E100),),COUNTIF(E16:E100,LARGE(E16:E100,2))),LARGE(INDEX((E16:E100=MAX(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MAX(E16:E100))-1)))

③ E14の数式

=INDEX(C1:C100,LARGE(INDEX((E16:E100=MIN(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MIN(E16:E100)))) & "-" & INDEX(D1:D100,LARGE(INDEX((E16:E100=MIN(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MIN(E16:E100))))

④ E15の数式

=INDEX(C1:C100,IF(COUNTIF(E16:E100,MIN(E16:E100))=1,LARGE(INDEX((E16:E100=SMALL(E16:E100,2))*ROW(E16:E100),),COUNTIF(E16:E100,SMALL(E16:E100,2))),LARGE(INDEX((E16:E100=MIN(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MIN(E16:E100))-1))) & "-" & INDEX(D1:D100,IF(COUNTIF(E16:E100,MIN(E16:E100))=1,LARGE(INDEX((E16:E100=SMALL(E16:E100,2))*ROW(E16:E100),),COUNTIF(E16:E100,SMALL(E16:E100,2))),LARGE(INDEX((E16:E100=MIN(E16:E100))*ROW(E16:E100),),COUNTIF(E16:E100,MIN(E16:E100))-1)))

改行してないのでFireFoxとかだと見づらいですが。

id:bu77

ありがとうございます。入力し、動作しました。以下のようにしようと思います。

①品目分シートを作成します。

②記入頂いた関数を入れます。

③品目ごとに店舗の順位がでます。

解決しそうです。

2009/03/15 13:27:02
  • id:SALINGER
    そんな、感じがしました。
    1位が2箇所の場合、2位に入るのは1位のもう一方になりますか?
  • id:pahoo
    比較すべき実績値は、各店舗の合計(たとえばA店の23期なら SUM(E16:E25))ですか?
    そして、各店舗の実績明細は常に10行ですか?
  • id:YAMADAMAY
    やまだまや(真優) 2009/03/15 12:45:03
    回答に対する「訂正返信」で余計に、何を知りたいのかが分かりづらくなりましたね。
    店舗名で出すなら、店舗ごとの合計欄が必要だし、それによって、順位を決める事になります。
    サンプルは2店舗しかないので、SALINGERさんの言われるとおり、2位は1位でない方に決まりそう、
    また、良い、悪いは1位と2位を逆転すればよい事になります。(店舗毎の合計で即判断できる)---おそらく表全体はそうではないでしょう。
    サンプルの表示の仕方で、さっぱり意図がつかめなくなります。
  • id:YAMADAMAY
    やまだまや(真優) 2009/03/15 13:01:31
    貴方の求めている回答をもう一度、確認、店舗名は複数あり、売り上げ?品目毎の1位、2位(上位、下位)の店舗名を知りたいのでは有りませんか?、先にコメントを書いたように店舗の売り上げ合計の順位でなく。
    まだ、真意が分かりませんが、そうなれば、ますます表が大きくなりますね{ベスト1,ベスト2、ワースト1、ワースト2}のセットが売り上げ品目分必要になりますから。質問の意図を分からせるには添付図では判別できなくなりますね。文章で補足できなかったですか?
  • id:bu77
    すいません。そもそもA店~B店~50店舗ほどございます。
    複数店あるE列の実績から、上位を検索して、上位の店舗名を表示したいです。
    上位1位2位、下位1位2位

    SALINGER
    そんな、感じがしました。
    1位が2箇所の場合、2位に入るのは1位のもう一方になりますか?
    ■→そのとうりです。2位に入るのは1位のもう一方になります。
      3店あった場合は項目自体ありませんので、増やす必要がありますね。
      3店ある場合もございます。
      
    pahoo
    比較すべき実績値は、各店舗の合計(たとえばA店の23期なら SUM(E16:E25))ですか?
    ■→E列です。

    そして、各店舗の実績明細は常に10行ですか?
    ■→10行です。

    YAMADAMAY
    回答に対する「訂正返信」で余計に、何を知りたいのかが分かりづらくなりましたね。
    店舗名で出すなら、店舗ごとの合計欄が必要だし、それによって、順位を決める事になります。
    サンプルは2店舗しかないので、SALINGERさんの言われるとおり、2位は1位でない方に決まりそう、
    また、良い、悪いは1位と2位を逆転すればよい事になります。(店舗毎の合計で即判断できる)---おそらく表全体はそうではないでしょう。
    サンプルの表示の仕方で、さっぱり意図がつかめなくなります。
    申し訳ありません。

    ■→10行
    品目毎の1位、2位(上位、下位)が知りたいです。

    ですので、品目づつ行が必要になりますね。

    ①青果

    1位、2位(上位、下位)の店舗名

    ②鮮魚

    1位、2位(上位、下位)の店舗名



    続く

  • id:SALINGER
    店ごとの合計でしたか。
    1つの関数でいっぺんに答えを出すよりは、段階を踏むほうが整理されやすく答えが見つかりやすいです。
    それで、各店舗の合計を別に計算するという段階を間に入れることをお勧めします。
    後は、項目を各店舗の合計に置き換えれば、そのまま私の提示した関数でできます。

    回答補足
    関数中は適当に100行としていますが、もっと多い場合は100を1000とかに変えてください。
    3項目(店)の場合は上の1位と2位のところに2項目しか表示されません。

    と、コメント書いてるうちに、品目ごととなったようですね。
  • id:bu77
    SALINGER さん、ありがとうございます!
  • id:YAMADAMAY
    やまだまや(真優) 2009/03/15 13:36:02
    私は、営業にはタッチしてませんが、施工施工技術者であり、その関連のSAとプログラマーを兼任してましたので、その観点から。売り上げの検討・改善資料はまず、店舗毎の売り上げの比較、そして品目毎に比較して、良かった実績と悪かった原因を追求、生かせる部分はいかし、反省・改善点を探す事が必要かと思います。{良かった=お褒め、悪かった=叱責}だけで済ませたら、その企業・団体は停滞・衰退するだけです。
    また、SA(システムアナリスト)の立場としては、その業務の内容ややり方を知る事(使いやすくする)や、何を求めているのか、改善すべき点はないか・・・と言う事を考えてプログラマーに指示、出来上がりを依頼者とチェックしながらシステムを完成していくわけです。ご質問の内容は、「システム」とはいえない小さなツールかもしれませんが、小さいツールだからこそ、使い勝手良く、誤りが出ない物としなければならないのです。
    そのための、指示、仕様がきっちりしてなくては、まったく意図しない結果となります(初めは許容範囲でも、後でまったく使い物にならなくなる事もあります。私のように企業内SAが居れば、その都度改善できますが)
  • id:SALINGER
    品目ごとのシートを作る場合は、フィルタで該当の品目だけを表示して、コピペするのが簡単です。
  • id:bu77
    YAMADAMAYさん、今回は品目の部分のコメントがなく、かつ実績に対して店舗名が欲しいにもかかわらず、曖昧な質問でした。ご迷惑をおかけいたしました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません