• ベストアンサー

エクセル関数で・・

お世話になります。 以下の数値があります。 A B C 1 A 1.4% 2 B 2.0% 3 C 10.0% 4 D 15.0% B列を検索して、10.0%以上のときに、C列にA列の値を上から順に返したいのですが、どのような計算式をいれればよいでしょうか? 上記の場合、セルC1に"C",セルC2に"D"が返ることになります、 すいませんが、どなたかご教授お願いいたします

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

  • ベストアンサー
  • rin01
  • ベストアンサー率43% (33/76)
回答No.4

>検索する行数が増えたら、どこをかえればいいのでし >ょう?? =INDEX(A:A,100-LARGE(INDEX(($B$1:$B$100>=0.1)*100-ROW($1:$100),),ROW(A1)))&"" こんな感じです。 100行にしました。 。。。。Rin

towa2005
質問者

お礼

ありがとうごさいまーす^^ 助かります

その他の回答 (3)

  • rin01
  • ベストアンサー率43% (33/76)
回答No.3

Rinで~す。。。 すみません。 絶対参照にするの忘れていました。。。(_ _); C1: =INDEX(A:A,4-LARGE(INDEX(($B$1:$B$4>=0.1)*4-ROW($1:$4),),ROW(A1)))&"" でした。。。♪♪

towa2005
質問者

お礼

ご丁寧にありがとうございます^^ 検索する行数が増えたら、どこをかえればいいのでしょう?? セルのとこだけですかね?? 4・・・の意味は???

  • rin01
  • ベストアンサー率43% (33/76)
回答No.2

こんばんは~♪ こんな式でも良いですね~。。。 C1: =INDEX(A:A,4-LARGE(INDEX((B1:B4>=0.1)*4-ROW(1:4),),ROW(A1)))&"" 下にコピーします。 Rinでした~♪♪

towa2005
質問者

お礼

ほんとですね^^ できましたあ~。ありがとうございます

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

まず確認ですがB列は0.014、0.02のような数値が入っていて書式が「パーセント」になっているで良いでしょうか。 C1セルに =INDEX($A$1:$A$4,SMALL(IF(B1:B4>=0.1,ROW(B1:B4),99999),ROW())) をペースとしてShift+Ctrl+Enterで確定。C2以下はC1をコピー。 該当するセルがなくなると#REF!エラーになります。もしエラーがいやならIF関数で判定するか、条件付き書式で「エラーの時文字色を白にする」などを追加して下さい。

towa2005
質問者

お礼

ありがとうございます^^できました。。こんなに難しい関数つかわないといけなんですね。。 VBAでもできるんでしょうか?最後のShift+Ctrl+Enterが気になりました・・・ちなみに、IF関数では今回の場合、できないんでしょうか? ずっとこれで考えたんで気になってって・・

関連するQ&A

  • Excelの関数について

    [C1のセル値]-[A1またはB1のセル値] を使って計算したい場合の計算式を教えて下さい。 A列、B列、C列には具体的な数値を入力します。 D列にその結果を表示させる関数を入力したい。 と考えています。 但し、以下の条件を満たす事が必須となります。 (1)A、B、またはCのセルが未入力の場合はDは空白セルのまま。 (2)A、Bいずれかの一方が入力されている場合はCの値を使って計算し結果を表示。 (3)A、Bいずれも入力されている場合はBを優先してCの値を使って計算し結果を表示。 よろしくお願いします。

  • Excel 関数について

    Excel 関数について データにちょっと数値を追記したいのですが、頭が混乱して何をやっているかわからなくなり、質問させて頂きます。 D1セルに以下セルの数値を入れたいのですが・・・ A1セルが0の時はB1セルの数値を。。でもA1セルに0以外の数値が入っている時はそれをD1セルに入れる。 B1セルも0の時はC1セルの数値を。。でもB1セルに0以外の数値が入っている時はそれをD1セルに入れる。 要するにA列B列C列にはそれぞれ数値が入っているのですが、A列とB列は0のところもあり。。。 列の優先順位としてはA列を最優先としてB列→C列の順に優先列の数値が0の時は最終的にはC列の数値が入るようにしたいです。 説明もわけがわからなくてすみません~どなたか教えて下さい(>_<)

  • Excelの関数またはマクロを教えて下さい。

    Exsel2000の関数で、現在以下の関数まで出来たのですが、これを応用して検索値「A1」を2つのセル「A1&B1」にしたいのですが、どうすればよいのでしょうか?どなたか方法を教えて下さい。 =VLOOKUP(A1,Sheet1!$A$1:$E$2000,4) 上記の関数から判るように、これは 例えばSheet2のC1のセルにこの式を入れる場合、A1と同じ内容の値を、Sheet1のA列から検索して、そして同じ行のSheet1のD列の値をSheet2のC1のセルに返すという関数です。 これを応用して、「A1と同じ内容…のA1を、A1&B1の2つが一致するセルを検索して、同じ列のSheet1のD列の値をSheet2のC1のセルに返すという関数にしたいのです。 どなたかおわかりになる方がおりました宜しくお願いいたします。 また、マクロを使う方法でも良いのですが、当方マクロは詳しくないので出来るだけ判りやすくお願いいたします。

  • エクセル2003の関数について教えて教えて下さい

    どなたかご教授下さい。 現在 ・・・・・・・・・・・・・・・・・・ A列 B列 C列 1 A  100  2 B  100 3 C  100  4 D  100 ・・・・・・・・・・・・・・・・・・ の、条件として A列に入る値が Aの時:B列×0.8 A列に入る値が Bの時:B列×0.5 A列に入る値が Cの時:B列×0.2 A列に入る値が Dの時:B列×1.0 を設定しています。 ですので、現在のシートは ・・・・・・・・・・・・・・・・・・・ A列 B列 C列 1 A  100  80 2 B  100 50 3 C  100  20 4 D  100 100  という状態です。 ・・・・・・・・・・・・・・・・・・・ 今後このシートを参照して 現在AであるC列の値の合計値 現在BであるC列の値の合計値 現在CであるC列の値の合計値 現在DであるC列の値の合計値 をそれぞれを算出し以下のように表示したいと考えています。 現在A→計350 現在B→計200 現在C→計120 現在C→計500 このような計算を行う場合の数式はどのようになるのでしょうか。 良い案がありましたら、どなたかご教授下さい。 宜しくお願いします。

  • Excel ある条件で大量のデータを計算するには

    Excelで、縦は500行からそれ以上あるデータを下記の条件で計算を行いたいのですが、どのようにしたら宜しいでしょうか。 大量のデータであっても、簡単に計算が可能な方法をご教授頂けると有難いです。 1)A+Bでマイナス200で計算されたセル(Bが-200のセル)は、ここで完了するので、C'とD'とFでは計算しません。 2)Bが0で尚且つCが-200以下のセルのみ、A+Cで計算し、ここで完了するので、D'とFでは計算しません。 3)上記1)2)でマイナスされず、Dに-200の数値が入っているもののみ、A+Dで計算し、ここで完了するので、Fでは計算しません。 4)上記1) 2) 3)でマイナスされなかったセルのみ、FでE-Aの値を計算します(B’, C’, D’の数値は特に残す必要がなくFの結果だけ分かれば良いです)。Fでは、上記 1) 3)でマイナスされた場合-200の数値、また上記 2)でマイナスされた場合その数値(例えば-300、-500など)をセルに表示させる必要があります。 ※ BとDは、0か-200の値が入っています ※ Cは全て0かマイナスの値ですが、様々な数字が入っています ※ Eにも様々な値が入っています ※ B,C,Dには既に計算式が入っています 分かりづらく申し訳ありません。 具体的には、このように計算を行いたいです。  A    B   B’   C   C’    D   D’   E    F 15750 ー200 15550 ー450 15550  ー200 15550 15600 ー200 15680    0 15680 ー200 15480  ー200 15480 15550 ー200 15550 ー200 15350  ー30 15350    0 15350 15480 ー200 15460   0 15460  ー300 15160 ー200 15160 15260 ー300 15380 ー200 15180 ー130 15180 ー200 15180 15300 ー200 15550   0 15550 ー500 15050 ー200 15050 15000 ー500 15540   0 15540  ー20 15540 ー200 15340 15550 ー200 15530   0 15530  ー10 15530   0  15530 15630 100 15620   0 15620  ー80 15620   0  15620 15600 ー20 B’(上記1)の条件) C’(上記2)の条件) D’(上記3)の条件) F (上記4)の条件) Windows 8.1でして、Excelのバージョンは2013です。 大変申し訳ございませんが、解り易いご回答をお待ちしております。 どうぞ宜しくお願い申し上げます。

  • エクセルの関数についてお尋ねします。

    以下のようにAセルとCセルが同じ場合、その隣のBセルとDセルの日時がBセルよりも後に なっている場合に「●」印をつけたい場合の計算式はどうすればいいのでしょうか? 以下の例だと、A列とC列で同じなのは、A1とC4です。 A1とC4の隣の列B1とD4の日時でB1よりD4が後の日時になっている場合に「●」印をつけたい   ┃  A   ┃      B         ┃  C   ┃     D          ┃ E 1 ┃ 20621 ┃ 2012/7/18 16:10:36 ┃ 27185 ┃ 2012/07/11 09:30:20 ┃ 2 ┃ 20767 ┃ 2012/7/18 09:33:46 ┃ 28253 ┃ 2012/07/18 16:35:57 ┃ 3 ┃ 20825 ┃ 2012/7/18 10:27:29 ┃ 28569 ┃ 2012/07/11 16:39:40 ┃ 4 ┃ 35041 ┃ 2012/7/19 09:22:15 ┃ 20621 ┃ 2012/07/20 10:20:55 ┃ ●

  • エクセルの関数

    セルAとセルBに小数点の値があります。 セルAとセルBどちらか、 (1)0.2以下の値がある場合には、セルAかセルBの値の大きい方を別の列のセルCに入力。 (2)両方とも0.2以上の時には、上記とはまた別の列のセルDに【セルA×セルB】の値を入力。(小数点2桁まで表示、以下四捨五入) (1)と(2)で表示されたものを、またまた別の列のセルEにまとめて、 (1)は 値×5(小数点切り上げ) (2)は 値×25(小数点切り上げ) というものを作りたいのです。 IFとANDとROUNDUPなど使ってやってみましたが、わけがわからなくなってしまったので、 どなたか教えていただけたらありがたいです。

  • Excel 関数 計算式について

    Excel関数について教えて下さい。 下記のようにExcelの縦列で、A列とB列があるとします。 A列の数値が「1」で、かつB列の数値が「2.5」以下の数(割合)を算出するにはどのような関数(計算式)を使えば宜しいでしょうか? また、上記の計算をすると同時に、その計算結果に当てはまる”B列”の数値を計算して、B列の合計数と平均数を割り出すためにはどのような関数(計算式)を使えば宜しいでしょうか。 個人的には、幾つかのセルに計算式を分ける必要があるかと思いますが、セルを分けるパターンでも分けないパターンてもどちらでも結構です。 但し、実際に計算式を記入するセルはA列でもB列ではなく、X列となります。 A列    B列 1      2.4 3      3.5 5      3.6 2      2.7 1      2.1 1      3.0 4      2.2 1      2.8 2      1.6 1      1.9 1      3.4 3      1.7 1      1.4 宜しくお願い致します。

  • EXCEL関数について

     A   B    1   3.4  2   5  4   9  7   6  □   □ ※上記の図は、A1セルに1、B1セルに3.4、A2セルに2、B2セルが5・・・の数値が入力されていることを表しています。 質問 A5セルに、A列を合算した値【14】+B列を合算した値23.4の、10の位【2】を足した値を表示したい→【16】と表示したい B5セルにはB列を合算した値【23.4】の1の位以下の数値を表示したい→【3.4】と表示したい。 つまり、(B1+B2+B3+B4)が10以上になれば、その値の10の位の数値を、A5セルに足したいのです。 このような事をするには、どういった関数を組めば可能でしょうか。 説明がわかりずらく、申し訳ありません。 どなたかおわかりになる方がおられましたら、ご教授下さい。 よろしくお願い致します。  

  • Excel 検索に関する関数について教えてください

    色々と試しましたが、どうしてもうまくいかないので教えてください。 A列に休日を除いた日付(生産カレンダー)が入っています。 日付は手入力です。 A列 2008/5/14 2008/5/15 2008/5/16 2008/5/19 2008/5/20 2008/5/21 B1セルに任意の日付が入力された時、C1のセルに任意に入力されている数値分だけ前の日付をA列を参照してD1セルに表示したいのです。 例えばB1セルに2008/5/20、C1セルに3と入力された場合、D1セルには2008/5/20の3つ上のセルの値、2008/5/15を表示させたいのです。 生産カレンダーは列でなく、行にしても可です。 LOOKUP系やOFFSETなども複合したりして試してみましたが、うまくいきません。 ご教授よろしくお願いします。

専門家に質問してみよう