いきなり答える備忘録

Google Workspace・Microsoft 365・LibreOfficeなどに関するメモ

(Excel)TEXTSPLIT関数で複数種の区切り文字を指定する

 Excelの新関数(2022年秋)であるTEXTSPLIT関数で、複数種類の区切り文字(文字列)を指定する方法です。

  • TEXTSPLIT関数の引数で区切り文字を「{"☆","〇"}」のように指定すれば、それら(☆と〇)のすべてを区切り文字(文字列)として区切った結果が得られます。

手順

 画像では、B列に分割する対象の文字列が入力されています。
 D3セルに次のような式を入力し下方にコピーすることで、「☆」と「〇」の両方を区切り文字として文字列を分割した結果を得ています。

 D3セル

=TEXTSPLIT(B3,{"☆","〇"})

 第2引数(列を区切る文字)を「{"☆","〇"}」と、配列の形式で指定しています。
 これにより「☆」と「〇」の両方を区切り文字として文字列を区切った結果が得られます。もちろん、3つ以上の区切り文字を指定する場合も同様です。
 また、第3引数(行を区切る文字)を指定する場合も同様です。


 また、次のように区切り文字がセル上に配置(D3:D4)されている場合は単純にそれらを参照すればOKです。
 ただし単純に式を下方にコピーするとD3:D4への参照がズレるので考慮する必要があります。

 F3セル

=TEXTSPLIT(B3,D$3:D$4)

 第2引数を「D$3:D$4」とすることでコピー時に参照がズレるのを防いでいます。
 縦方向へのスピルを利用してF3セルに「=TEXTSPLIT(B3:B6,D3:D4)」とするだけでよさそうに見えますが、そうするとTEXTSPLIT関数の仕様により各行で最初の項目(それぞれ滋賀県,青森県,日本,アメリカ)しか返ってきません。よって絶対参照を用いたうえで式を各行にコピーしています。