

нellо~(´Д`) こんにちは。
元気デスカ(☆・Ω・)人(・Ω・☆)イエイ♪
このような顔文字が流行った時期もありましたが、最近は連絡手段がSNSのDM(ダイレクトメッセージ)やスタンプ中心になり、電子メール上で顔文字が使用される機会も減りました(業務用電子メールで顔文字を使用するのは、マナー違反ですからね)。
ところが、顔文字がExcelに降臨か!? Σ( ºωº )
ナンダ! 小学校の社会科で習った「茶畑」マークみたいな!?3点コードは??? .:.
あ、よくみると4点だった!?
調べてみると、これは2025年1月末時点で、Insider Programのバージョンでのみ使用できる、TRIM参照というものらしいです。 今回はこのTRIM参照の機能や、使い方がどのようなものなのかを、調べてみました。
TRIM参照とTRIMRANGE関数は、データ上部/下部の空白行を自動除去できる新機能
まず、Insider Programで使える新関数TRIMRANGEの構文をご紹介します。
=TRIMRANGE(セル範囲,[行],[列])
第2引数[行]と第3引数[列]は省略可能ですが、指定する場合は、0-3の範囲でコード指定をします。
<第2引数[行]>
0. なし
1. 先頭の空白行を除去
2. 末尾の空白行を除去
3. 先頭と末尾の空白行を除去
<第3引数[列]>
0. なし
1. 左の空白列を除去
2. 右の空白列を除去
3. 左右の空白列を除去
たとえば、下図サンプルのように =TRIMRANGE(A:A,3)という関数式を任意のセルへ入力すると、1-3行目、および10行目以降が除去されて、
4月
5月
6月
7月
8月
9月 という6行だけが抽出されます(Microsoft365版以降のExcelではスピル機能が働きますので、関数式を1つ入力するだけで、関連するすべてのレコードが自動的に抽出されます)。


TRIM参照というのは、実はこのTRIMRANGE関数の第2引数までの部分を、関数を使用しないで制御できる新機能なのです。
たとえば、セル範囲指定で「A:A」とするとA列全体(1行目から1,048,576行目まで ※ .xlsxファイルの場合 )を指定することになりますが、
A.:A
とすると、「先頭からの空白を除去した範囲指定」(TRIMRANGE関数の第2引数が”1”の状態)をあらわし、逆に、
A:.A
とすると、「データ最終行以降の空白を除去した範囲指定」(TRIMRANGE関数の第2引数が”2”の状態)を意味します。
前後に両方ピリオドをつけて、
A.:.A
とすると、「先頭と末尾以降の空白を除去した範囲指定」(TRIMRANGE関数の第2引数が”3”の状態)となります。
これではじめて、この顔文字の一部のような、あるいは茶畑マークの出来そこないみたいなマークが、単なるイメージではなく、数値やデータを制御するコマンドの一種であることが理解できました。
.:.
日々変わる情報をすばやく、正確に帳票化するため、不要部分をすばやくTRIM(除去)
それでは、実務上でTRIM参照やTRIMRANGE関数が、どのように使えるかを考えてみましょう。すぐ思いつくのが、日々発生する納品書や発注書、請求書や領収書などの帳票類に、マスターや台帳から正確に転記する作業です。
ためしに、Web上で一般公開され、フリー・ダウンロード可能な見積書テンプレートをダウンロードしてみました。


(セル結合が多用されているため、データ参照入力をしやすくするための整形が大変でしたけどね…汗 ( ˙˙ ; ) )


作業過程をわかりやすくするため、テンプレートのすぐとなりに、簡単な商品・単価マスターをはり付けました。


Microsoft 365版などのExcelを使っていれば、スピル機能が効きますので、商品名1行目に商品マスタ全体を範囲指定すれば、自動的にマスタの商品名・単価が納品書へと転記されます(上図サンプルでは、セルA16へ、=G16:H20という数式を入力しています)。
では、この =G16:H20 という数式を、
=G16.:.H20
と変更すると、何が起こるでしょうか?
ただ数式を変えただけでは、何も起こりません。
ただし、商品・単価マスタに変更を加えた時に、納品書にも変化が生じるようになるのです。
取引実務の現場では、毎日、毎月、同品目を同量だけ納品・請求するケースはまれでしょう。欠品が生じたり、追加商品のオーダーがあったりという変更が都度発生することがむしろ普通です。そのような時に、マスタへの参照方法は、コロン(:)よりも4点(.:.)の方が便利なのです。
納品書の商品名に、
=G16.:.H20
としたマスタ(セルG16からH20の範囲)を加工した時の変化をみてみます。
まず、品目の追加はスピルで検知されますので、マスタ参照範囲をあらかじめ広めに取っておけば、追加行は自動的に納品書に書き足されます。


元のマスタの最下行「メモ帳,20」を消去してみると、


納品書の項目からも自動消去されます。
マスタの最上行「えんぴつ,100」を消去するとどうなるでしょうか?


単に納品書の項目行から自動消去されただけでなく、空白行が詰められ、テンプレートの1行目以降にマスタ2行目以降の有意データが整列するように自動修正されました。
まとめ;上下左右の空白を自動削除してくれる新関数TRIMRANGE
関数名入力すら不要のTRIM参照に置き換えれば、さらに簡単に操作可能
今回は(2025年1月末現在) Insider Program内でのみ試用可能な新関数TRIMRANGEにフォーカスしました。といっても、関数の機能そのものは従来からあるTRIM関数の拡張系と理解してよいでしょう。今回特に面白い試みは、”新関数の機能を、ピリオド1つの追加で制御してしまおう”という、TRIM参照の新しいオプションです。
最近Excelに搭載された新関数はいずれもパワフルで、複雑なデータ処理もこなしてくれるのですが、何しろ関数名が長くてやっかいです(基本関数の拡張系であることに起因します)。
今回、新関数TRIMRANGEを試験提供するのと同時にTRIM参照方式も導入しようとした試みは、とても興味深いものです。 Excelヘビーユーザーであれば、他にも「頻出する関数を置き換えてくれる制御記号があればいいのになあ」と思う作業場面が多数あるのではないかと推測します。



まずは4点.:.マークのTRIM参照が本番運用され、ユーザー認知が上がって利用率が高まってくれることを期待しましょうかね \(°∀°)/





