こんな状態のとき、空白詰めたいときあるじゃん、て話

Office365のみサポートだが、2パターン紹介
・TEXTJOINで文字列を結合後、分割してセルに展開(スピル)
・TOCOL(TOROWでもOK)で空白を飛ばして展開(スピル)
使用例
①TEXTJOINで文字列を結合後、分割してセルに展開

上の式では以下の工程で空白詰めが成り立っている
・TEXTJOINで”A,B,C,D,E,F”という文字列を生成
・TEXTSPLITにてカンマ区切りの文字列を列方向に分割
一見数式が野暮ったくも見えるが、「何をしてどうなっているか」が数式から読み取れる。
②TOCOL(TOROWでもOK)で空白を飛ばして展開

こちらの方法は非常に記述がシンプル。
左の引数に範囲を選択、隣の引数は「特定の値を無視する」というものだが、
これをTRUEにすることで空白セルを飛ばして表示できるという仕組み。
ただ、「特定の値」として判定されない場合は思い通りに表示できないかもしれない。
まとめ
- INDEXとROWを使う方法があるが、Office365であれば圧倒的にこの方法が楽。
- 「スピル」をうまく使うことでVBAでユーザー関数を作ったり、複雑な数式を組む手間が省ける。