[Excel] 二次元データの最小値(or 最大値)のセルを探索する(2次元探索)
目的:マクロを使用せずに、二次元データの最小値を探し、そのアドレスを求める
背景:MATCH関数が常套手段だが、探索は列内(or 行内)の1次元に限られる
方法:以下の配列数式を入力し、Control + Shift + Enter
■行列アドレス:例えば、$C$2 が得られる
=ADDRESS(SUM(IF(領域=最小値,ROW(領域))),SUM(IF(領域=最小値,COLUMN(領域))))
■行番号:例えば、2 が得られる
=SUM(IF(領域=最小値,ROW(領域)))
■列番号:例えば、3 が得られる
=SUM(IF(領域=最小値,COLUMN(領域)))
備考:
1)上記の「最小値」を min(領域) に変更可
2)領域は、A1:E5 のような表現
3)SUM関数は、複数の条件に基づく集計用に使用されている
すなわち、IF()がTRUEになった時の数値(ここでは、行列番号)が合計される
4)SUMPRODUCT関数も同じ目的で使用される
関連記事:
[Excel] 一覧表から特定の言葉を含む行を検索して、その前後数行を抽出する
http://kenkitagawa.cocolog-nifty.com/blog/2013/06/excel-e589.html
[2019/5/17] 最大値が複数個あると、sumで複数個の和になってしまい、正しい結果が得られない。
対応策:countif関数で最大値個数を求め、sumを割る(平均位置になる)
| 固定リンク | 0
「パソコン・インターネット」カテゴリの記事
- [IrfanView] 画像の座標や輝度値を表示させるには?(2025.03.26)
- テレビでYoutube広告をスキップする方法(2024.09.22)
- [動画]字幕の時間調整をする方法(2024.09.14)
- [Windows10] フォルダ表示形式の統一方法(2024.09.09)
- [Word] 図形や画像が印刷できない(2024.08.31)
コメント