連番昇順リストの配列は、行番号を利用して作成するすることができます。
下図はその方法の例
@: セル範囲を指定
A1:A15までの行番号をROW()関数で取得している。
1〜15までの15行分が配列として作成される。
A: 行を指定
1:15 のようにすると、行全体が指定される。
同じく、1から始まる15行分の連番リストが生成される。
@より、若干、短く記述できる利点あり。
B: 文字列式をINDIRECT関数で範囲オブジェクトに変換。
C: おなじく、INDIRECT関数でセルの値を指定して変換。
行範囲をセルの値で指定できる利点あり。
D: OFFSET関数で、リストの高さを指定。
Cと同じく、セルの値で指定できる。
下図CとDで #N/A と出ているのは、作成しようとしている範囲より、配列数式の行範囲が小さいために発生している。
この#N/A部分を配列数式内で参照すると、式自体がエラーになるので注意(工夫)が必要になる。
これらの方法を用いて、配列数式の部品として、さまざまな用途に利用できます。
例:
MID関数の取り出し位置、RANK関数の順位、SMALL/LARGE関数の順位、
INDEX関数の行位置、FIND/SEARCH関数の開始位置 などなど