GAS開発者向けにスプレッドシートのテキスト列分割機能をすべてまとめました。
カンマ区切りやタブ区切りなどのいわゆるCSVデータを扱う処理です。
データ分析を行っている方、たくさんのデータを取り扱う方にとっては頻繁に使用するかもしれない機能ですね。
テキスト列分割に関するメソッドをすべて載せてます。少しでも参考になれば幸いです。
Google Apps Script スプレッドシート 基礎 リファレンス
当ページは、GAS公式リファレンスを元にスプレッドシートの機能毎にまとめた基礎的な内容となっております。
若干、文言がおかしい可能性がありますが、あらかじめご了承ください。
GAS基本メソッドまとめ一覧はコチラ↓↓↓です。スプレッドシートの基本的な機能をまとめてますので、ぜひご活用ください。
まずは実際に動かしてみることをオススメします。マクロの登録方法は以下を参照いただければと思います。
GASの本はまだまだ少ないですね。基礎レベルであれば、以下の参考書が初心者にはベストの本です。
基本的な仕様やよく使われる機能の設定方法がまとまっています。
※JavaScriptの知識が既にある程度ある人にとっては冗長かもしれません。
セル範囲クラス[Range]のテキスト列分割
セル範囲のテキスト列分割メソッドです。
テキスト列分割[splitTextToColumns()]
splitTextToColumns()
自動検出された区切り文字に基づいてテキストの列を複数の列に分割します。
function splitTextToColumnsSample() {
// A1:A3の値は以下のとおりです。
// A B C
// 1 |one,one,one | | |
// 2 |two,two,two | | |
// 3 |three,three,three| | |
var range = SpreadsheetApp.getActiveSheet().getRange("A1:A3");
range.splitTextToColumns();
// テキストを列に分割した結果
// A B C
// 1 |one |one |one |
// 2 |two |two |two |
// 3 |three |three |three |
}
参照:Google Apps Script | REFERENCE | SpreadSheet | Class Range | Methods | splitTextToColumns()
テキスト列分割区切り文字付1[splitTextToColumns(区切り文字)]
splitTextToColumns(delimiter)
指定した文字列をカスタム区切り文字として使用して、テキストの列を複数の列に分割します。
function splitTextToColumns1Sample() {
// A1:A3の値は以下のとおりです。
// A B C
// 1 |one#one#one | | |
// 2 |two#two#two | | |
// 3 |three#three#three| | |
var range = SpreadsheetApp.getActiveSheet().getRange("A1:A3");
range.splitTextToColumns('#');
// テキストを列に分割した結果
// A B C
// 1 |one |one |one |
// 2 |two |two |two |
// 3 |three |three |three |
}
Name | Type | Description |
---|---|---|
delimiter | String | 分割するカスタム区切り文字。 |
テキスト列分割区切り文字付2[splitTextToColumns(区切り文字)]
splitTextToColumns(TextToColumnsDelimiter)
指定された区切り文字に基づいてテキストの列を複数の列に分割します。
function splitTextToColumns2Sample() {
// A1:A3 has the following values:
// A B C
// 1 |one;one;one | | |
// 2 |two;two;two | | |
// 3 |three;three;three| | |
var range = SpreadsheetApp.getActiveSheet().getRange("A1:A3");
range.splitTextToColumns(SpreadsheetApp.TextToColumnsDelimiter.SEMICOLON);
// テキストを列に分割した結果
// A B C
// 1 |one |one |one |
// 2 |two |two |two |
// 3 |three |three |three |
}
Name | Type | Description |
---|---|---|
delimiter | TextToColumnsDelimiter | 分割するプリセットの区切り文字。 |
テキスト列分割区切り文字列挙型[TextToColumnsDelimiter]
テキストを列に分割できる区切り文字です。
Enum TextToColumnsDelimiter
テキストの列を複数の列に分割できるプリセット区切り文字の種類の列挙体。
プロパティ | タイプ | 説明 |
---|---|---|
COMMA | Enum | , 区切り文字。 |
SEMICOLON | Enum | ; 区切り文字。 |
PERIOD | Enum | 。 区切り文字。 |
SPACE | Enum | 半角スペース 区切り文字。 |
参照:Google Apps Script | REFERENCE | SpreadSheet | Enum TextToColumnsDelimiter
最後に
GASテキスト列分割機能機能のまとめをご紹介させていただきました。
必要に応じて、有益な情報でさらに更新していきたいと思います。
プログラミングスキルを向上させるためには、本を読むだけでは脳にインプットされませんね。
実際に手を動かしてアウトプットしまくるのが一番の近道だと思います。
実際にサンプルソースをコピーして実行した結果がどうなるかを体験してみてください。
自分なりのアレンジを加えたり、なぜエラーになるのかを考え、何度も試行錯誤して問題を解決しまくり、着実に理解しながらスキルを向上させていきましょう。
GASはExcelVBAとはかなり違いますが、ベースとなっているJavaScriptは覚えて損はないプログラミング言語なのでショートカットキーなどと組み合わせてぜひ活用してみてください。
Googleスプレッドシート全ショートカットキー一覧はこちら↓↓↓
ショートカットキー一覧にもGASメソッドを載せています。どの操作からどのメソッドが呼ばれるのかイメージしてください。
コメント