Google Apps Script スプレッドシート

スプレッドシートの「テキストを列に分割」をGoogle Apps Scriptでやるには?

スプレッドシートの「テキストを列に分割」をGoogle Apps Scriptでやるには?
カンマ区切りのテキストをスプレッドシートで扱う時、「テキストを列に分割」を使って各セルに分けるのはよく用いられるテクニックです。
じゃあ、それを「Google Apps Script」で実現するには?
その方法をまとめてみました。

 

Google Apps Scriptで「テキストを列に分割」を実現するには?

splitTextToColumnsメソッドを使います。
Rangeオブジェクトに対して使うことができます。
例えば、A1からA3にカンマ区切りのテキストが入力されているなら、次のように書きます。

var range = SpreadsheetApp.getActiveSheet().getRange("A1:A3");
range.splitTextToColumns();

公式リファレンスより引用

 

区切り文字を指定するには?

splitTextToColumns()の引数に区切り文字を入れればOKです。
例えば、「#」で区切られているテキストを分割するには次のように書きます。

var range = SpreadsheetApp.getActiveSheet().getRange("A1:A3");
range.splitTextToColumns('#');

公式リファレンスより引用

ちなみに、区切り文字は「SpreadsheetApp.TextToColumnsDelimiter.〇〇」で指定することもできます。
〇〇の内容は、TextToColumnsDelimiter一覧でご確認ください。
例えば、セミコロンで分割したいときは次のように書きます。

var range = SpreadsheetApp.getActiveSheet().getRange("A1:A3");
range.splitTextToColumns(SpreadsheetApp.TextToColumnsDelimiter.SEMICOLON);

公式リファレンスより引用

 

まとめ

スプレッドシートの機能である「テキストを列に分割」を「Google Apps Script」で扱うには、splitTextToColumnsメソッドを使えば良いです。
たった1行で実現できるので、コードが読みやすくて良いですね。

-Google Apps Script, スプレッドシート
-, , , , , , , ,