• ベストアンサー

Excelの関数

MAX関数の答えに該当するセルの列番地を別の関数の引数の一部に使いたいのですが、どのようにすればいいですか? 例えばMAX(A1:G10)とあってその答えがC5だとします。 別のセルで=C10を入れるのですが、そのCはMAX関数の答えのCをひっぱってくるようにしたいのです。 宜しくお願いします。

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

  • ベストアンサー
  • sige1701
  • ベストアンサー率28% (74/260)
回答No.6

配列数式でやるなら =MAX(IF(B4:AW4=MAX(B4:AW4),$B$3:$AW$3)) と入力して、Ctrl + Shift + Enter

take-r2d2
質問者

お礼

ご回答ありがとうございます。 補足後、自力でもなんとかご回答いただいた方法を見つけることができました。 本当にありがとうございました。

その他の回答 (5)

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.5

No.3です。改訂版です。 AY4に =INDEX($B$3:$AW$3,MAX(IF(B4:AW4=MAX(B4:AW4),COLUMN(B4:AW4)))-1) と入力して、Ctrl + Shift + Enterで配列数式にし このセルをAY34までコピー&ペーストします。 これで最大値が同値で複数存在する場合も、一番遅い時刻を表示します。

take-r2d2
質問者

お礼

たびたびご回答ありがとうございます。 一応答えは、自力でだせたのですが、いただいた数式も理解して参考にさせていただきます。 勉強になります。

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.4

測定数字がどのような値か不明ですが・・・ 測定数字が整数であれば AY4=MOD(MAX(INDEX(B4:AW4+$B$3:$AW$3,)),1)

take-r2d2
質問者

お礼

ご回答ありがとうございます。 一応答えは、自力でだせたのですが、いただいた数式も理解して参考にさせていただきます。

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.3

AW4に =MAX(B4:AW4) という式が入っているのであれば =INDEX($B$3:$AW$3,MATCH($AX4,$B4:$AW4,FALSE)) で出せるとは思うのですが、同値が複数あった場合 早い時間の方を表示してしまうのが難点ですね。

take-r2d2
質問者

お礼

ご回答ありがとうございます。 そうなんです。同じ値が複数あるので少しややこしいです。 参考にさせていただきます。

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.2

質問内容を、どのように理解したらいいのか判りませんが >例えばMAX(A1:G10)とあってその答えがC5だとします。 >MAX関数の答えのCをひっぱってくるようにしたいのです 文字の「C」が必要ですか、3列目ということでいいですか 最大値が、複数存在したとき、どのようにしますか? 参考までに =SUMPRODUCT((A1:G10=MAX(A1:G10))*COLUMN(A1:G10)) >別のセルで=C10を入れるのですが 該当する列の10行目ということであれば =SUMPRODUCT((A1:G10=MAX(A1:G10))*A10:G10)

take-r2d2
質問者

補足

ご回答ありがとうございます。 実際の表の仕様をはじめの回答者様の補足に載せました。 とりあえず、教えていただいた関数を理解するところから始めてみます。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

A1:G10セルの最大値のあるセルがC5セルの時、「C」という文字列を表示させたいなら、例えば以下のような関数で表示できます。 =CHAR(MAX(INDEX(((MAX(A1:G11)=A1:G11)*COLUMN(A1:G11)),))+64) ところで、この値を使って表示したい実際の数式は、その列の10行目という数式で良いのでしょうか? その場合は以下のような数式になります。 =INDIRECT(CHAR(MAX(INDEX(((MAX(A1:G11)=A1:G11)*COLUMN(A1:G11)),))+64)&10) 実際の数式が「=C10」と違う場合は、直接列番号を参照するなど上記の数式よりももっと効率的な数式になる場合が多いので、その場合は「例えば」ではなく実際の数式データを例示されたほうが、皆さんから的確な回答が寄せられると思います。

take-r2d2
質問者

補足

ご回答ありがとうございます。 実際の表は以下のようなものです。 A3の項目名は時刻でB3~AW3までは30分単位で時刻が入力されています。(0:30、1:00、1:30・・・) A4~A34までの項目名はその日の日付です。(11月1日~11月31日※11月は実際は30日ですが) B3~AW34までにはある測定をした数字を入力していきます。 AX3~AX34にはMAX関数を入れその日の測定数字の最大値が求められるようにします。 そして最終的には、 AY3~AY34に求められた最大値に該当する時刻を表示させるようにしたいです。 最大測定値が複数あった場合ですが、一番遅い時刻を表示させることができればベストです。 もしできなければここは、無視してもらって構いません。 とりあえず、教えていただいた関数を理解するところから始めてみます。

関連するQ&A

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

    エクセルのMAX関数についてご質問します。例えば、 A1セルに$B$1:$B20の文字列が入っているとします。 普通にMAX関数を使う時は引数を=MAX($B$1:$B20)と直接入力しますが、=MAX(A1セルの値($B$1:$B20))としてMAX関数の引数をあるセルの値の内容にしたいのですが、その方法を教えてください。困ってます。宜しくお願いします!!

  • 関数の答えを別の関数の引数で使えますか?

    セルC1に入れた文字列で検索をかけ、該当するセル番地を表示させます。 その答えをOFFSET関数の引数として使いたいのですが、可能ですか? 具体的には以下のような式です。 シートは2010年度と2011年度があります。 =$Q7/SUM(OFFSET('2010年度'!(ADDRESS(MATCH($A7,'2010年度'!A:A,0),4)),0,0,1,COUNT($E7:$P7)))

  • 知らなかった =MAXA()、=MINA()関数

    どなたかの回答を読んいて、最大(小)値を求める関数に、私が使ったことのない =MAXA() とか =MINA() が存在することを知りました。私は専ら =MAX()、=MIN() を使っていたのです。 下記の文章は、MAXA関数のヘルプからの抜粋です。 1.引数には数値を表す文字列を指定できます。 2.引数として指定した論理値と、数値を表す文字列が計算の対象となります。 3.引数としての配列またはセル範囲の参照に含まれる空白セルと文字列は無視 __されます。 4.引数に文字列が含まれる場合は 0 と見なされます。 添付図において、 1.範囲 B1:B5 に数値を入力。 2.セル A1 に式 =TEXT(B1,"0") を入力して、下方にオートフィル。 3.セル B6、B7 に式 =MAX(B$1:B$4)、=MAXA(B$1:B$4) を入力。 4.範囲 B6:B7 を左にオートフィル。 5.列D、Cも上と同様ですが、MAX を MIN の読み替えてください。 でも、当該表の結果からは MAX と MAXA の、および、MIN と MINA の違いを窺い知ることができません。どなたか MAX と MAXA の使い分けの好例を教えてください。

  • エクセル関数について

    エクセル関数について質問です。 簡単に説明すると特定のセルに特定の数値を入力するとその行の別のセルの数値を別のセルに表示させたい。 たとえば     A      B       C 1  100            2  200      1      100 3  300      1      300 4  400 5  合計            400 上記の様になっていた場合 A列は定数で固定です。B列のセルに1と入力(1でなくてもよい)した行のA列の数値を Cに表示したいのですが、 C列にどの様な関数を使ったらいいんでしょうか?宜しくお願い致します。

  • エクセルの関数の引数で範囲指定をしたいのですがセル番地の足し算などは出

    エクセルの関数の引数で範囲指定をしたいのですがセル番地の足し算などは出来ないのでしょうか? address関数を使ってみたのですが、文字列として認識される為エラーが出ました。 もしくは文字列をセル番地(範囲指定できる形)に変換することは出来ませんか?

  • 教えてエクセル関数

    エクセルの掛け算は空欄を0と認識して答えが0になってしまいますが max関数がうまく使えません(-_-;) 例=A1*B1*C1*D1 仮にD1のセルが空欄

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

    エクセルの関数について質問します。 =counta(a5:a13)の場合 a5の列から,a13の列まで,9列のカウントをします。 これを,次のようにしたいです。 すでに,セル番地D1には「9」の値が入っています。 =counta(a5:????D1)として a5の列を含めて,9列までをカウントしたいです。 よろしくお願いします。

  • エクセル関数を使いこの様なことができますか?

    こんにちは エクセルのあるセルに数式(又は関数)を入力し、別のセルに数字を入力したら、セルの塗りつぶしの色が設定しておいた色に変わるようなことはできないでしょうか? (例えば、C1には当初は何も入力されておらず、そのC1にある数字を入力するとA1のセルの色が赤に変わるようなことを考えています。なお、色を変えたいセル自身には数字が入力されている場合といない場合と二通りあるため、いずれの場合も対応できるようにしたいのです。 つまり、初期状態では、A列(色を変えたいセル列)には数字が入ったセル、入っていないセルが混在しており、C列(ここに数字が入力されるたびにA列の対応する行のセルの色を変えたい)には何も入力されていない。この状態で、任意のC列のあるセルに数字を入力すると同じ行にあるA列のセルの色を変えたい、ということをしたいのです。) 具体的にA列にどの様な数式を入力すればよいかを教えて下さい。 (或いは、そのようなことをするための式(関数)はA,C以外の列のセルに入れる必要があるかもしれませんが(例えばB列)、それでもかまいません) よろしくお願いします。

  • エクセルの関数、お願いします<(_ _)>

    ちょっと長くなりますが宜しくお願いします。 Aのシート C列には「機種」、D列には「ライン」、E列には「色」、F列には「寸法」、G列には「本数」、I列には「経費」をそれぞれ入力します。 「機種」はAかBのどちらか、「ライン」は1~4までのどれか一つを、「色」は1~12までのどれか一つを、「寸法」は2000か3000のどちらか、「本数」は該当数を、「経費」も該当数をそれぞれ入力します。 Bのシート E4のセルに、Aのシートで「機種」にA、「ライン」に1、「色」に1、「寸法」に2000とそれぞれ入力したときの経費が合計されるように表示したいのです。 どのような関数を入れると良いのでしょうか? ちなみにE5のセルには、「機種」にA、「ライン」に2、「色」に1、「寸法」に2000とそれぞれ入力したときの経費が合計されるように表示したいです。 よろしくお願いします。

  • エクセル関数の質問

    こんにちは。エクセルについて教えてください。 まずは伝わりやすいように下記を見てもらえますか?(と思いましたが、逆にうまく伝わるか書いたあとに不安になりました) ↓シート1 ___A______________B____C   1_[アイウエ]_[T]_[ ] 2_[カキクケ]_[T]_[ ] 3_[サシスセ]_[Z]_[ ] ↓シート2 ___A_______B 1_[アイ]_[(1)] 2_[カキ]_[(2)] 3_[シス]_[(3)] 上段と左側のアルファベットと数字はセル番地です。 [__]がひとつのセルです。 シート1のC列は、空白です。 やりたいことはというと 1.シート1のA列にシート2の文字が含まれている場合にシート1のC列にシート2のB列の(1)~(3)を入れる。(Vlookup関数でできるかな?と思ったら、完全に同じものじゃないとうまく機能しないようなので・・・) 2.「1」の作業のあとに、シート1でB列が「T」&C列が「(1)」のものをカウント。(Countif関数かな?と漠然と思いつつ、二つの条件の入れ方が分からずエクセル本を見ていたら、Dsum関数を見つけて「これ?」と思いましたが、それもよく分からず・・・) よろしくお願い致します。

専門家に質問してみよう