今回は @Subset という関数の使い方をまとめます。リスト値(複数値、配列)を操作する上で必須となる関数です。
@Subset の仕様と構文
@Subset はリスト値から部分リスト値を抽出する場合に使用します。構文は次の通りです。
@Subset( list ; number ) |
1 | list | 文字列リスト 数値リスト 日付/時刻値リスト |
抽出元のリスト値 |
2 | number | 数値 | 抽出する値の数 |
@Subset の動作
まずは単純な例です。list に次の 5 つの値が入っていて、3 を指定した場合の結果です。リストの前から指定した数だけのリスト値が返されます。
list | @Subset( list ; 3 ) |
@関数 LotusScript HTML JavaScript Java |
@関数 LotusScript HTML |
おもしろいのは負の数を指定できることです。この場合、リストの後ろから指定した数だけ取得します。例えば -3 を指定した場合は次のようになります。
list | @Subset( list ; -3 ) |
@関数 LotusScript HTML JavaScript Java |
HTML JavaScript Java |
リスト値の要素数を意識することなく、一発で後ろから取得できるなんて高性能な関数ですね。LotusScript で記述すると 1 行では済まないので、@関数が便利だと感じる瞬間ですね。
指定した要素番号の値を取得
1 を指定するとリスト値の先頭、-1 を指定すると最後の要素を取得できます。この機能を利用して、要素番号 n の値だけを取得するには次のように記述します。
@Subset(@Subset(list; n); -1); |
上記はリストの前から n 番目を取得しますが、次のように記述すると後ろから取得できます。
@Subset(@Subset(list; -n); 1); |
リストの要素のアクセスは list[3] のように [ ] で指定することができます。ただ、この機能は Notes Release 6 からの新機能(20 年以上前です)で、それ以前から Notes 界隈にいる人は今でも @Subset 二段掛けを使う人が多いと思います。
まとめ
今回は @Subset の使い方についてまとめました。このブログ内ですでに何度も登場している関数ですね。他の事例については当ブログ内の 出直し!!ヘルプ @関数編 の @Subset 内に「関連記事」としてまとめています。
0 件のコメント:
コメントを投稿