• ベストアンサー

エクセルの関数RANK

エクセル2000を使っています。RANK関数でランクを出したいのですが、範囲がA列だけでなくB列、C列にもあります。これらのはなれたデータを範囲にできますか?Ctrlを押しながらドラッグすると複数の範囲は選択できるのですが、エラーが出てしまいます。できるなら方法を教えてください。

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

  • ベストアンサー
回答No.3

範囲が飛び地でなければ、CTRLを押しながらの範囲指定で可能です。(RANK関数を複数のセルで使うのであれば、絶対番地にするのをお忘れなく) 飛び地の場合は、#1の方の通り名前を定義すれば可能です。 定義の方法は、CTRLを押しながら範囲を指定し、左上の名前ボックスに直接名前(例えばDATA)を入力し、 =RANK(A1,DATA,0) とすれば、OKです。 DATAが、絶対番地なのでそのままコピーできます。

mikenekosuki
質問者

お礼

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

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

ユーザー関数(名前は何でも良いがrankxとした)を作ると、範囲が飛び離れていても、出来ました。 Function rankx(b) Dim a As Range Set a = Union(Range("a1:c6"), Range("a9:c10")) rankx = Application.WorksheetFunction.Rank(b, a) End Function 上記コードを、VBEのモジュール画面に貼りつけます。 (例データ) A1:c6に 11 23 4 23 4 5 34 1 5 54 56 45 3 34 23 22 A9:C10に 11 34 12 102 (使い方)普通の関数と同じ。ただし範囲はビルトインされているので固定。 =rankx(102)結果は1 =rankx(56)結果は2 =rankx(45)結果は4

mikenekosuki
質問者

お礼

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

  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.2

A1~A10に1~10 B1~B10に11~20 C1~C10に21~30 D1に=RANK(A1,$A:$C,0) とやったら30と出ましたよ! 頑張ってくださいヽ(^。^)ノ

mikenekosuki
質問者

お礼

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

  • akio_myau
  • ベストアンサー率34% (515/1480)
回答No.1

範囲に対して名前を定義したら どうでしょうか。

mikenekosuki
質問者

お礼

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

関連するQ&A

  • Rank 関数について

    Rank 関数について エクセル2003を使っています。  Rank関数で出した数字を「数字/総数」という形式で表示させる方法を教えてください。 別の列に出しても構いません。ユーザー定義を使うのかもしれません。 例 名前 数値 Rank A  50  2 B  30  3 C  90  1 Rank列の横に 2/3 3/3 1/3 と表示させたいのです。

  • エクセルのRANK関数についてです。

     エクセルを使っていまして、その中の関数にRANKという関数があるわけですが、書式は =RANK(数値,範囲,順序) になりますが、この範囲のところにSUM関数を入れることはできるのでしょうか? =RANK(数値,SUM(B2:B5),順序) という形でSUMをRANK関数の中に入れることは可能でしょうか?私自身も何度も試してみましたが「入れた数式は正しくありません」というエラーが出てしまいました。

  • Excel RANK関数 条件に一致する数値の順位

    EXCELのRANK関数で条件に一致する数値の順位を出したいのですが、そのような関数は出来ますか? A列 B列 C列(RANK) A  10  1 B 9 1 A 8 2 B 7 2 A 6 3 B 5 3 A列とB 列からC列を求めたいのですが、できますか?

  • 関数

    Excelで関数を使用して以下のようなデータから A列からB・Cの複数のデータ抽出をすることは可能でしょうか? (VLOOKUPですと助かります) <sheet> A列 B列 C列   1  A   1     2  A   2  3  B   3  4  B   4  5  C   5  6  C   6 複数の関数を組み合わせでもかまいませんので、お手数おかけしますが よい方法が有ればご教示お願いします。

  • 【エクセル】重複項目内でのみのrankは・・・

    エクセルでのrank関数について教えてください! 下のような表になっています。   A   B    (理想の結果) 1 あ  30    2 2 あ  50    1 3 あ  10    3 4 い  60    1 5 い  15    2 6 う  38    1 とあります。ここで、単純にrank関数を使って順位を 示すのではなく、A列の「あ」の中での順位、 「い」の中での順位・・・といった結果にしたいのです。 重複データを抽出・・・といった関数の組立方が さっぱりわかりません。 手動でrank範囲を指定するのには膨大なデータで、 気が遠くなりました。 お手数ですがよろしくお願いします。 

  • エクセルの関数で教えて下さい

    エクセルでデータの計算をしたいのですが、やり方がわからないので教えて下さい!! 一つの列にあるデータが該当する個数を数える方法はわかるのですが、複数の列にあるデータで、複数の条件が合ったときの個数を数える方法を教えて下さい 例えば A、B、Cそれぞれの列にデータをいれ、そのA列、B列、C列それぞれの条件の条件が合った時の個数が何個かということを数えたいのです よろしくおねがいします

  • RANK関数について

    エクセルでこんな感じの表があります。 A1■B1■C1■D1■E1■F1■G1■H1 12■13■23■66■93■89■72■29 ランク関数をつかってそれぞれの順位を出したいのですがうまくいきません。 数式には=RANK(A1,A1,C1,E1,G1,0)と入力してあります。範囲を指定する際にA1,C1,E1,G1のような、連続していないセルを指定しては、計算できないものなのでしょうか? どなたかご教授ください

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

    エクセル countifs関数について 上記を使い、相談受けた内容や人の情報を日付ごとにまとめているデータを集計するやり方です。 その中にあるデータ 男 の数を月ごとにまとめたいのですが、 データは、同じ日なら、同じ列に追記していく形になっているので、 countif(c2:d34,〝男〝)として、 複数範囲 を選択し、男のデータを集計しておりました。 ただ、月ごとに自動で選択されるように h列に month関数で月の値を求めてから、 i列にi2から月の数字として、4~3 の値 入力。 式をcountifs(c:g,〝男〝,h :h,i2) としたところ、エラーとなり、データを求めることができませんでした。 範囲を、複数範囲と列 で設定しているのが、よくないと思うのですが、うまくやる方法ないですかね。 列 と列で揃えるしかないですかねぇ。 もし、よい方法があれば、ご教示ください。 ※データを言葉だけで表現しているので、大変わかりにくくて申し訳ありません。 countifsの考え方を知りたいというのが目的なので、実際の式、データよりは、かなり簡潔にして記載しております。

  • 関数の「RANK」について(Excel)

     小売業で働いており、皆の売上の順位を出すことになりました。「RANK」という関数を使ってみようと思い、30名のうちの1人目に計算式を入れてうまくいきました。次に、後の29名分も書式をコピーして(ドラッグ)して簡単に出そうとしたところ、1列ずつ計算式に入れた「範囲」がずれて、正しいデータが出せません。結局、1列ずつそのつど「RANK」の計算式を入れて順位を出しました。どなたか範囲がずれないやり方をご存知の方、教えてください。

  • RANK関数で

    ランク関数について、教えて下さい。 Aさん 124 Bさん 135 小計  259 Cさん 115 Dさん 130 小計  245 合計  504 という表があり、ランク関数で順位をつけたいのです。 式は、 =RANK(B2,B2:B6,0) ですが、これですと小計も入ってしまいます。 範囲で、小計をとばすと、 B2:B3,B5:B6 にすると、コロンが入って、 引数が増えてしまいますので、 これもだめです。 小計を入れずに、ランクで順位をつけたいのですが、 どういう風にしたらよろしいのでしょうか? 教えて下さい。 宜しくお願い致します。

専門家に質問してみよう