• ベストアンサー

Excel関数で

ある範囲を指定して、その中で一番右側に入っている値を取り出す 式を入れています。 =IF(COUNT(A4:G4),LOOKUP(MAX(A4:G4)+1,A4:J4),\"\") 更に別の場所に、指定した範囲の一番右側に入っている値の、一番上の列に入っている値を求めたいのですが、 どうしたらいいのでしょうか? 例えば・・・ 指定範囲 A4:G4 この範囲の一番右の値が入っているセルが、C4 だとした場合、 C1 に入っている値を求めたいということです。

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

◆同じ質問があるように思いますが? >一番上の列に入っている値を求めたいのですが ◆一番上=1行目であれば =IF(COUNT(A4:G4),INDEX(A1:G1,MATCH(MAX(A4:G4)+1,A4:G4)),"") または、 =IF(COUNT(A4:G4),INDEX(A1:G1,MATCH(10^10,A4:G4)),"")

magtown
質問者

お礼

ありがとうございました。

関連するQ&A

  • Excel関数で

    ある範囲を指定して、その中で一番右側に入っている値を取り出す 式を入れています。 =IF(COUNT(A4:G4),LOOKUP(MAX(A4:G4)+1,A4:J4),"") 更に別の場所に、指定した範囲の一番右側に入っている値の、一番上の列に入っている値を求めたいのですが、 どうしたらいいのでしょうか? 例えば・・・ 指定範囲 A4:G4 この範囲の一番右の値が入っているセルが、C4 だとした場合、 C1 に入っている値を求めたいということです。

  • Excel関数を解説して教えて下さい。

    どなたか教えて下さい。 Excelで特定の列の中で一定の範囲が指定されているセルの任意のセルに値を入力し、その範囲の中に入力された最終行 (最下段) の値を取り出すために下記のようにExcelのLookup関数を使用して必要とする値を取り出しています。 =Lookup (10~10,特定の列の最上段のセル:特定の列の最下段のセル) これで間違いなく特定の列で定められた範囲に記載された値の最下段の値を取り出せますが、 10~10と設定する意味と、どうして最下段の値が取り出せるのか、この関数を解説して教えて下さい。 また、この場合の最上段の値を取り出す際の関数も教えて下さるようお願いいたします。

  • Excel - 関数に関する疑問

    お世話になります。 たとえばある表で、A1(1月とします)からL1(12月とします)に向かって 5 7 11 14 13 13 25 27 15 16 20 22 と並んでいるとします。 また、この数値は累計で、12月に位置する「22」が最終の値だとします。 このうち、セルに常に最新の値を出す式として =IF(COUNT(A1:L1),LOOKUP(MAX(A1:L1)+1,A1:L1),"") というものをこちらで拝見し、これ自体は非常に便利で活用しているのですが、もひとつこの式の意味するところがよく分からずにいます。 何故COUNTをする必要があるのか? MAX(A1:L1)は「27」のハズなのに、何故最終の「22」が引けるのか? ていうか「+1」って何? どなたか、解説をお願いいたしますm(_ _)m

  • エクセルのFIND関数の複数セル参照について

    C4=LOOKUP(0,0/FIND(B4,テーブル1[アドレス]),テーブル1[名称])  「テーブル1」の「アドレス」列を部分一致で検索し、「B4」セルの文字列に該当する項目があったら、「テーブル1」の「名称」列のデータを「C4」セルに表示するよう、インターネット上の情報を参照しながら数式を組んでいます。  ところが、「B4」セルの文字列に該当する項目があるときはいいのですが、該当項目がない場合は「#N/A」と表示されるため、「IF」関数を追加し、以下のようにしたところ、うまく動きませんでした。 C4=IF(COUNT(FIND(B4,テーブル1[アドレス])),LOOKUP(0,0/FIND(B4,テーブル1[アドレス]),テーブル1[名称]),"未使用")  「数式の検証」で調べたところ、「LOOKUP」関数内の「FIND」関数は「テーブル1」の「アドレス」列の各セルをそれぞれ参照しているのに対して、「COUNT」関数内の「FIND」関数は同じ行(C4の場合は4)の「テーブル1」の「アドレス」列しか参照していませんでした。 「LOOKUP」関数内の「FIND」関数のテーブル1[アドレス]: {"アドレス1";"アドレス2";"アドレス3"} 「COUNT」関数内の「FIND」関数のテーブル1[アドレス]: "アドレス4"  参照内容が異なるのはなぜでしょうか。  この場合、どのようにすればよろしいのでしょうか。  また、「LOOKUP」関数は「旧バージョンとの互換性を維持するためのもの」となっており、代わりに「VLOOKUP」や「HLOOKUP」、「MATCH」関数などで代用はできないのでしょうか。  何卒ご教示よろしくお願いいたします。

  • [EXCEL]LOOKUP関数の戻り値とセルの書式の関係

    現在(たぶん同じ理由で)2点ほど困っていることがあります。 以下のようにLOOKUP関数を使ってセルに値をセットしています。 <Sheet1のレイアウト> |A列|B列  |C列 |-|----|---- |a |あああ |・・・ |b |いいい |・・・ |c |    | |d |かかか |・・・ <Sheet2のレイアウト> |A列|B列                 |C列 |--|-------------------|- |a | =LOOKUP(A1,Sheet1!A:A,Sheet1!B:B) | |b | =LOOKUP(A2,Sheet1!A:A,Sheet1!B:B) | |c | =LOOKUP(A3,Sheet1!A:A,Sheet1!B:B) | まず1つめです。 今まで、Sheet1は別ブックのマクロで出力された値を[コピー]→[形式を選択してはりつけ]→[値]ではりつけていました。このときはSheet2のB3のセルにはブランクが入っていたのですが、誤ってSheet1のセルに直接値を入力したり、[F2キー]→[Enter]をしてしまったためSheet2のB3のセルにはブランクをセットしたいのに0(ゼロ)が入るようになってしまいました。 B3のセルにブランクがセットされるように戻したいのですがどうしたらよいでしょうか? 次に2つめは、 Sheet2は他の列もB列と同様の式によって値がセットされていますが、列によって右詰で表示されたり中央揃えで表示されています。 Sheet1、Sheet2ともにすべて書式は「文字列」で、 Sheet2には「右詰」「左詰」などの書式は設定されていません。これはなぜでしょうか? 1つめは、IF文でLOOKUP関数の戻り値が0だったらブランクをセットするなどに式を変更すれば解決するとは思いますが、このような式が至るところで使ってありますので式を変更するにも時間がかかるため、また今後のためにも原因と対策をしりたいと思います。どなたかわかる方がいらっしゃいましたら回答よろしくお願いします。

  • IF関数で計算する

    J4セルへ入れている関数と式 =IF(F4=11,J3+C4,IF(G4=11,J3-C4,J3)) F・G列にはコード C列には金額 J列には差引残高  J3の残高に対してF4が11だったらJ3+C4を        もしG4が11だったらJ3-C4で差引残高を。。 質問です F・G列に入れている数字が11だけだと成立しているのですが やりたいことは11・12・13・14と四つのコードどれが入った場合でも 上記の計算式を成立させたい。 よろしくお願いします。     Jin1118

  • Excel関数を使った表示

    Excelで指定した範囲の一番右側に入力されている値を取り出す 方法はありますか? 例えば… 指定範囲 A1:A10 このうち、A1:A8にはデータが入っていて、A9:A10 には、値が入っていないという状態で データが入っている一番右側である、A8の値を求める 関数があれば教えてください。

  • IF関数とLOOKUP関数の組み合わせについて

    指定したセルと等しい数値(文字列?)をLOOKUP関数を使って別シートのデータベースを検索させて、そのシートに無ければまた別のシートのデータベースを検索させるものを作りたいのですが上手くいきません。 指定したセルが空白なら空白を返すように次のような感じで作っています。 IF(A1="","",IF(LOOKUP(A1,シート1!A1:A15,A1:A15)<>A1,LOOKUP(A1,シート2!A1:A15,B1:B15),LOOKUP(A1,シート1!A1:A15,B1:B15))) VLOOKUP関数でもやってみたのですがこちらも上手くいきません。 IF(A1="","",IF(LOOKUP(A1,シート1!A1:A15,A1:A15)<>A1,VLOOKUP(A1,シート2!A1:B15,2,0),VLOOKUP(A1,シート1!A1:B15,2,0))) ご指摘いただければ嬉しいです。

  • 関数について

    関数でこんなことをしたいのですが。 ある文字列を検索範囲内で検索し、そのセルの下方にあるセルの値を返したいのですが、「LOOKUP」関数は右横のセルの値は返しますが下方はだめでした。よろしくご教示ください。

  • EXCEL2003で判定式について教えてください。

    仮にA1に12.9、B1に12、C1に11.4、D1に12.5とあるとして F1にはA1-B1の値を、G1にはB1-C1の値、H1にはC1-D1の値を それぞれ10倍して(小数点以下を無くし見易くする為に) 表示するものとします。 その後F1~H1の3つの値(+9、+6、-11)に対し、+5以上が 一つでもあるならなら「A」、+1~+4のみは「B」、 +の値が一つもなく0以下なら「C」と判定させたいのです。 そこで当初J1で =IF(F1:H1>=5,"A",IF(F1:H1<=0,"C","B")) としたところ複数のセルに対してはできないようなので 一旦J1でMAXを使い(+5以上か)を判定し、L1に =IF(J1>=5,"A",IF(J1<=0,"C","B")) と二つのセル、二つの式で結果的には出来たのですが、 なんとかすっきりと一つの関数式で判定させることは 出来ないでしょうか?

専門家に質問してみよう