No.5ベストアンサー
- 回答日時:
No.4さんの回答に
>CU3セルに
> =MAX(OFFSET(CU3,,9-COLUMN(),1,COLUMN()-9))
という説明が登場しますが、数式を記述したセルの右側に列を挿入することがないのであれば、CU3セルに
=MAX(OFFSET(DD3,,-COLUMN(),,COLUMN()-9))・・・①
という数式でも良いように思います。
また、No.1さんの回答にINDIRECT関数が登場しますが、ADDRESS関数を使わずに書くと、CU3セルに
=MAX(INDIRECT("R"&ROW()&"C9:R"&ROW()&"C"&COLUMN()-1,0))・・・②
という数式を記述することになります。
なお、①②の数式は下方向へコピーすることを前提に作成されていますが、CU3、CU4、CU5にそれぞれ数式を書く前提ならCU3に
=MAX(INDIRECT("R3C9:R3C"&COLUMN()-1,0))・・・③
とする方法もあります。(③の数式は下方向へコピーして使用できません)
>CU3セルに
=MAX(OFFSET(CU3,,9-COLUMN(),1,COLUMN()-9))
この式に関して確認させて下さい。
参照範囲はI~CT列なのにA列~CT列のように思われます。
この式にある「9-」と「-9」の9はABC...のHが9番目です。何か関係ありませんか。
No.6
- 回答日時:
No.5です。
本来No.4さんにお尋ねになるべき質問ですが、当方に質問されたので代わりに回答します。
>この式にある「9-」と「-9」の9はABC...のHが9番目です。
>何か関係ありませんか。
着眼点はGOODですが、残念ながらご質問者は勘違いをされているようです。「ABC...のHが9番目です。」は誤りです。正しくは「ABC...のHが8番目です」。従って、「ABC...のIが9番目です。」が正しい意味となります。
OFFSET関数の構文はOFFSET(基準,行数,列数,高さ,幅)という形で、[基準]は基準となるセルを指定する引数、[行数],[列数]参照範囲が基準からどれだけシフトするかを指定する引数、[高さ],[幅]は参照範囲の大きさを指定する引数となります。
つまり、=MAX(OFFSET(CU3,,9-COLUMN(),1,COLUMN()-9))・・・①という数式は行数指定が省略されています。この数式のOFFSET(CU3,,9-COLUMN(),1,COLUMN()-9)・・・②という部分を解説すると、数式をCU3に記述するので、このとき「COLUMN()」は「99」を意味します。ですから②はOFFSET(CU3,0,9-99,1,99-9)⇒OFFSET(CU3,0,-90,1,90)・・・③となります。
[行数],[列数]のシフトは下方向、右方向が「正」なので、「CU3から行を0行(つまり動かさず)、列を右に-90セル(つまり左に90セル)シフトしたセルから、高さ1セル分、幅90セル分を参照する」という意味になり、「CU3から行は動かさず、列を左に90セルシフトしたセル」は【I3】セル、そこから「高さ1セル分、幅90セル分参照」だと最終セルが【CT3】セルになります。
従って①は結果として=MAX(I3:CT3)と同じだということになります。
次に列を挿入した場合を考えてみましょう。
列を挿入すると、もともと数式が書かれたCU3セルはCV3セルになっているはずです。このとき「COLUMN()」は「100」です。すると②はOFFSET(CV3,0,9-100,1,100-9)⇒OFFSET(CV3,0,-91,1,91)・・・④となります。
「CV3から行は動かさず、列を左に91セルシフトしたセル」は【I3】セル、そこから「高さ1セル分、幅91セル分参照」だと最終セルが【CU3】セルになります。
つまり、①が=MAX(I3:CU3)に変化したことになり、常にI列から数式直列までの範囲で最大値を求めることができるという訳です。
>CU3セルに
=MAX(OFFSET(CU3,,9-COLUMN(),1,COLUMN()-9))・・・①
この式が正しく機能することを確認しました。
ただ、その後気付きました。
参照範囲がI~CT列であるので、列挿入をI列の左側ではなく右側即ち、J列の左側に列挿入すれば、I列はずれることなく=MAX(I:CU)で済ますこと出来ること分かりました。
ご支援をありがとうございました。
No.4
- 回答日時:
No2です。
投稿してから気付きましたが、No2の式だとG列の直前に「列挿入」を行うと上手くいきません。
理由は、隣のF列を基準にしてしまったためで、計算列自身を基準にして
=MAX(OFFSET(G3,,1-COLUMN(),1,COLUMN()-1))
としておくべきところでした。
それはさておき、
>範囲をI~CT列に変更したく思います。どうすればよいでしょうか。
計算値を表示する欄がどの列なのかによりますけれど、仮に、CU列だとするなら、
CU3セルに
=MAX(OFFSET(CU3,,9-COLUMN(),1,COLUMN()-9))
となると思います。
No.3
- 回答日時:
>式の中身を読み解く気力が失われました。
よろしくお願いします。そう言わずに頑張りましょう。
提示された式を、理解せずに、ただcopyするだけなら、いつまでたっても上達しませんよ。ご自身で解決するよう勉強しましょう。
#2 fujilin さんの提示された式はそれほど難解では無いと思います。
MAX関数の意味はご存じですね。
OFFSETとCOLUMNの意味を調べましょう。
たったこれだけで、質問者さんの問題は解決するのだから、
そう難しいことではないでしょう。
No.2
- 回答日時:
こんばんは
ご提示の添付図の最初の状態で、G3セルに
=MAX(OFFSET(F3,,2-COLUMN(),1,COLUMN()-1))
とかでは、ダメでしょうか?
早速のコメントありがとうございます。
この式、希望のものであること確認しました。
ただ、分かり易くA~H列を対象にしました。
実際はI~CT列です。
質問の時点では、式の中にAやHが出て来るだろうと思っていました。
しかしお示しいただいた式には出てきておりません。
範囲をI~CT列に変更したく思います。どうすればよいでしょうか。
式の中身を読み解く気力が失われました。よろしくお願いします。
No.1
- 回答日時:
=MAX(INDIRECT(ADDRESS(ROW(),1)&":"&ADDRESS(ROW(),COLUMN()-1)))
これで、A列から、式の入ったセルの前の列までのMAXを求めます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ある数値に対して、値を返す数式についてです 2 2022/09/13 22:06
- Excel(エクセル) アウトラインの小計のやり方 1 2023/03/20 11:51
- Excel(エクセル) 特定文字(数字)で行挿入、挿入された行で合計したい 2 2023/03/13 14:30
- Excel(エクセル) AVERAGE関数とINDIRECT関数を使ってのオートフィル 3 2023/01/12 12:00
- Excel(エクセル) 行の一番右のデータセルと同じ列の日付を取得する方法 2 2022/09/22 20:05
- 数学 2*2の行列に対して固有値の最大実部を与えるkの値を求めたい 3 2022/11/08 16:26
- Visual Basic(VBA) Excel(VBA) 特定の条件に該当する行の値、書式を同じセルにコピ&ペーストしたいです 1 2022/05/21 18:18
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Excel(エクセル) エクセル テーブル機能の不明点 2 2022/04/14 14:10
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel元に戻す方法を教えてくだ...
-
エクセルで二つの数字の小さい...
-
「B列が日曜の場合」C列に/...
-
2つのエクセルのデータを同じよ...
-
エクセルで最初のスペースまで...
-
PowerPointで表の1つの列だけ...
-
A列がない・・・A列が非表示に...
-
文字列に数字を含むセルを調べたい
-
Excelで半角の文字を含むセルを...
-
VBAで文字列を数値に変換したい
-
エクセルで、列の空欄に隣の列...
-
スマートな関数を教えて下さい。
-
エクセル 文字数 多い順 並...
-
Excel、市から登録している住所...
-
エクセルかグーグルスプレッド...
-
エクセルで文字が混じった数字...
-
エクセルで2列のセルを連続して...
-
B列の値がA列にあるかを調べる関数
-
エクセル ひらがなの文字を抽出
-
EXCELで 一桁の数値を二桁に
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセルで最初のスペースまで...
-
2つのエクセルのデータを同じよ...
-
エクセル 同じ値を探して隣の...
-
エクセル(勝手に太字になる)
-
「B列が日曜の場合」C列に/...
-
エクセル 文字数 多い順 並...
-
EXCELで 一桁の数値を二桁に
-
Excelで半角の文字を含むセルを...
-
エクセルで文字が混じった数字...
-
エクセルの項目軸を左寄せにしたい
-
Excel、市から登録している住所...
-
エクセルで、列の空欄に隣の列...
-
エクセルの表から正の数、負の...
-
エクセルの並び変えで、空白セ...
-
VBAで文字列を数値に変換したい
-
A列がない・・・A列が非表示に...
-
文字列に数字を含むセルを調べたい
-
50人を数回、グループ分けする...
おすすめ情報