[[20170121113654]] 『セル範囲に名前をつけた【名前の定義】』(マリオ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『セル範囲に名前をつけた【名前の定義】』(マリオ)

セル範囲に名前をつけた【名前の定義】について、
行番号のMax,Min及び、列番号のMax,Minを調べたい!

F7=MAX(INDEX((リスト<>"*")*ROW(リスト),0))
で、名前の定義をしたセル範囲の行番号のMaxを調べることができました。
ただし、リストは、セル範囲「B3:C12」を【名前の定義】したもの

■質問
B列、C列には、空白はあっても、「*」の文字が入ることはないと想定して、
「<>"*"」としました。
F6,F7,G6,G7の式についてですが、他の式でも可能なら教えてください。
急ぎではありません。

■ここから下は、詳細解説です
次のようにデータを入力後、
「B3:C12」のセル範囲を選択してから、
「Ctrl+F3」を押して名前の定義ダイアログボックスにて、名前の定義。

シート名は、「Sheet1」とする。
名前は、「リスト」
参照範囲は、「=Sheet1!$B$3:$C$12」

 ----------------------------------------------------------------------------------------------
     |[A] |[B]    |[C]    |[D]
 [1] |    |       |       |   
 [2] |番号|B_title|C_Title|   
 [3] |   1|B01    |C01    |   
 [4] |   2|B02    |C02    |   
 [5] |   3|B03    |C03    |   
 [6] |   4|B04    |C04    |   
 [7] |   5|B05    |C05    |   
 [8] |   6|B06    |C06    |   
 [9] |   7|B07    |C07    |   
 [10]|   8|B08    |C08    |   
 [11]|   9|B09    |C09    |   
 [12]|  10|B10    |C10    |   
 ----------------------------------------------------------------------------------------------
     |[E]|[F]                                     |[G]                                        
 [1] |   |行                                      |列                                         
 [2] |MIN|                                       3|                                          2
 [3] |MAX|=LOOKUP(1,0/(A:A<>""),ROW(A:A))         |                                          3
 [4] |   |                                        |                                           
 [5] |   |行                                      |列                                         
 [6] |MIN|=MIN(INDEX((リスト<>"*")*ROW(リスト),0))|=MIN(INDEX((リスト<>"*")*COLUMN(リスト),0))
 [7] |MAX|=MAX(INDEX((リスト<>"*")*ROW(リスト),0))|=MAX(INDEX((リスト<>"*")*COLUMN(リスト),0))
 [8] |   |                                        |                                           
 [9] |   |行                                      |列                                         
 [10]|MIN|=IF(F2=F6,"一致","不一致")              |=IF(G2=G6,"一致","不一致")                 
 [11]|MAX|=IF(F3=F7,"一致","不一致")              |=IF(G3=G7,"一致","不一致")                 
 ***********************************************************************************************
 最終的にこうなりました

     |[A] |[B]    |[C]    |[D]|[E]|[F] |[G] 
 [1] |    |       |       |   |   |行  |列  
 [2] |番号|B_title|C_Title|   |MIN|   3|   2
 [3] |   1|B01    |C01    |   |MAX|  12|   3
 [4] |   2|B02    |C02    |   |   |    |    
 [5] |   3|B03    |C03    |   |   |行  |列  
 [6] |   4|B04    |C04    |   |MIN|   3|   2
 [7] |   5|B05    |C05    |   |MAX|  12|   3
 [8] |   6|B06    |C06    |   |   |    |    
 [9] |   7|B07    |C07    |   |   |行  |列  
 [10]|   8|B08    |C08    |   |MIN|一致|一致
 [11]|   9|B09    |C09    |   |MAX|一致|一致
 [12]|  10|B10    |C10    |   |   |    |    

< 使用 Excel:Excel2013、使用 OS:Windows10 >


 こんにちわ。

 違う方法でと言うなら、以下で求められると思います。

 行min =CELL("row",リスト)
 行max =CELL("row",リスト)+ROWS(リスト)-1
 列min =CELL("col",リスト)
 列max =CELL("col",リスト)+COLUMNS(リスト)-1

(sy) 2017/01/21(土) 14:35


 >syさん
 わお、上記の私の式だと、「*」の文字じゃないならの条件が付いていましたが、
 これなら、セル内の文字がなんでもOKですね。
 ありがとうございました。
(マリオ) 2017/01/21(土) 20:25

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.