「StiLL」 デザイン情報291 コマンド -- 関数で行うデータの抽出やグループ化 | |||||||||||||||||||||||||||||||||||
【テーマ】 データのフィルタやグループ化にはそれぞれのStiLLボタンが用意されていますが、今回はセルに関数をセットして同様の事を行うほか、即時反映する方法をご紹介します。 ※ Microsoft365、Excel2021のみ |
【方法】 (BtSetValue)」ボタン、 UNIQUE関数・FILTER関数・他関数を使って作成します。 |
【参考】 スピル範囲の参照には、先頭セルの後ろに「#」を付けると、範囲全体を参照することができます。 |
|||||||||||||||||||||||||||||||||
■ 今回の内容 | |||||||||||||||||||||||||||||||||||
データを抽出・加工するには、StiLLボタンを実行すればできますが、 | |||||||||||||||||||||||||||||||||||
元データが変わった時や条件となる値を変えた時に、その結果も即時反映して欲しいことはありませんか。 | |||||||||||||||||||||||||||||||||||
今回は、元データの項目から重複を削除した(ユニークな)データの抽出と、指定した条件でのフィルタを例に、 | |||||||||||||||||||||||||||||||||||
関数とStiLLを使った、即時反映させる方法をご紹介します。 | |||||||||||||||||||||||||||||||||||
【イメージ】 | |||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||
■ 考え方・条件 | |||||||||||||||||||||||||||||||||||
データのグループ化やフィルタリングには、通常プログラムの実行が必要ですが、 | |||||||||||||||||||||||||||||||||||
関数の結果が自動的に広がる「スピル」機能により、同様な結果を表示する事が可能になりました。 | |||||||||||||||||||||||||||||||||||
今回は特定の関数の作成と、StiLLで設置する方法について解説します。 | |||||||||||||||||||||||||||||||||||
※本記事で使用する「UNIQUE・FILTER」関数は、Microsoft365、Excel2021で追加された関数で、 | |||||||||||||||||||||||||||||||||||
それ以前のバージョンのExcelでは利用できません。 | |||||||||||||||||||||||||||||||||||
■ 作成手順1:重複データの削除(一意の値の一覧を作成) | |||||||||||||||||||||||||||||||||||
セル「E1」に、A列の項目から重複を削除し、一意の値のみ表示する関数を作成します。 | |||||||||||||||||||||||||||||||||||
E1数式:=UNIQUE(A:A) | |||||||||||||||||||||||||||||||||||
(範囲A:Aの一意の値の一覧を返す) | |||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||
数式を確定すると、結果が自動的に広がります。 | |||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||
■ 作成手順2:フィルタ条件欄・フィルタ関数の作成 | |||||||||||||||||||||||||||||||||||
セル「G2」に、フィルタの条件値を指定する欄を、セル「G5」にフィルタを行う関数を入力します。 | |||||||||||||||||||||||||||||||||||
セルG5数式:=FILTER(A:C,A:A=G2,"") | |||||||||||||||||||||||||||||||||||
(範囲A:C列より、A列がG2セルと同じレコードを返し、ない場合は空欄を返す) | |||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||
数式を確定すると、結果が自動的に広がります。また、G2セル内容を変更すると、即時結果が反映します。 | |||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||
■ 作成手順3:StiLLボタンによる関数の挿入 | |||||||||||||||||||||||||||||||||||
上記の関数は、予め入力しても有効ですが、StiLLボタンでセットする場合は、以下のように指定します。 | |||||||||||||||||||||||||||||||||||
手順1:関数をセットするボタン「セル値セット(BtSetValue)」ボタンの作成 | |||||||||||||||||||||||||||||||||||
「StiLL」>「セルリンクボタン」>「メニューバー」>「書式」にある「BtSetValue」ボタンを選択し、貼り付けます。 | |||||||||||||||||||||||||||||||||||
手順2:「セル値セット(BtSetValue)」ボタンの設定 | |||||||||||||||||||||||||||||||||||
作成した「セル値セット(BtSetValue)」ボタンの以下項目に、下記値を設定します。 | |||||||||||||||||||||||||||||||||||
![]() |
|||||||||||||||||||||||||||||||||||
!ポイント | |||||||||||||||||||||||||||||||||||
関数の前に「^」ハット(キャレット)記号を入れると、スピル機能が有効になります | |||||||||||||||||||||||||||||||||||
注意 | |||||||||||||||||||||||||||||||||||
「==^」のように、スピル機能と値化を同時に指定することはできません | |||||||||||||||||||||||||||||||||||
■ スピル機能の特徴と注意点 | |||||||||||||||||||||||||||||||||||
スピル機能が有効になる関数は、動的に配列が変化し、結果がすぐ反映するので便利ですが、 | |||||||||||||||||||||||||||||||||||
システムに取り入れるには、以下の点にご注意ください。 | |||||||||||||||||||||||||||||||||||
1:範囲内のセルは直接編集できない | |||||||||||||||||||||||||||||||||||
2:範囲内のセルは単体で削除できない | |||||||||||||||||||||||||||||||||||
3:範囲内に別の値があるとエラーになる | |||||||||||||||||||||||||||||||||||
4:結果に項目や範囲名はつかず、2次利用しにくい | |||||||||||||||||||||||||||||||||||
5:前述に記載したバージョンのExcelでのみ利用可能 | |||||||||||||||||||||||||||||||||||
上記に該当する場合は、StiLLを使って明示的なデータを作成することをおすすめします。 | |||||||||||||||||||||||||||||||||||
■ ご参考までに | |||||||||||||||||||||||||||||||||||
上記注意点で、範囲名はつかないとしましたが、関数を挿入したセルの参照の後に「#」とつけると、 | |||||||||||||||||||||||||||||||||||
スピルされた範囲全体を参照する事が可能です。 | |||||||||||||||||||||||||||||||||||
例1:=ROWS(E1#) | |||||||||||||||||||||||||||||||||||
上記例でE列のリストの行数を表示します。 | |||||||||||||||||||||||||||||||||||
例2:セルG2の「データの入力規則」で「入力値の種類」を「リスト」、「元の値」を「=E1#」と指定すると、 | |||||||||||||||||||||||||||||||||||
プルダウンリストでE列の内容が表示されます。 | |||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||
今回使用した関数には、別途オプション項目があります。 | |||||||||||||||||||||||||||||||||||
スピル機能と併せて、EXCELのヘルプ等をご参考にしてください。 | |||||||||||||||||||||||||||||||||||
(各ボタンの設定内容の詳細はStiLLヘルプをご確認ください) | |||||||||||||||||||||||||||||||||||
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます | |||||||||||||||||||||||||||||||||||