GAS開発者向けにスプレッドシートのデータ空白文字削除機能をすべてまとめました。
セルのデータを扱う際、うっとおしい空白データを削除して綺麗に整理したい時はきっとあると思います。
半角スペースのみ、全角スペースのみ、タブのみ、改行のみのセルデータを一発で綺麗にしてくれるのでGASで簡単にできるようにしておくといつか役立つはずです。
データ空白文字削除に関するメソッドをすべて載せてます。少しでも参考になれば幸いです。
Google Apps Script スプレッドシート 基礎 リファレンス
当ページは、GAS公式リファレンスを元にスプレッドシートの機能毎にまとめた基礎的な内容となっております。
若干、文言がおかしい可能性がありますが、あらかじめご了承ください。
GAS基本メソッドまとめ一覧はコチラ↓↓↓です。スプレッドシートの基本的な機能をまとめてますので、ぜひご活用ください。
まずは実際に動かしてみることをオススメします。マクロの登録方法は以下を参照いただければと思います。
GASの本はまだまだ少ないですね。基礎レベルであれば、以下の参考書が初心者にはベストの本です。
基本的な仕様やよく使われる機能の設定方法がまとまっています。
※JavaScriptの知識が既にある程度ある人にとっては冗長かもしれません。
セル範囲クラス[Range]の空白文字削除
セル範囲のデータ空白文字削除メソッドです。
データ空白文字削除[trimWhitespace()]
trimWhitespace()
この範囲内のすべてのセルの空白(スペース、タブ、改行など)を削除します。各セルのテキストの最初と最後からすべての空白を削除し、残りの空白文字のすべてのサブシーケンスを単一のスペースに減らします。
注:結果のトリミングされたテキストが「+」または「=」の文字で始まっている場合、テキストは文字列値として残り、式として解釈されません。
function trimWhitespaceSample() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange('A1:A4');
range.activate();
range.setValues(
[' preceding space', 'following space ', 'two middle spaces', ' =SUM(1,2)'])
range.trimWhitespace();
var values = range.getValues();
// 値は['preceding space', 'following space', 'two middle spaces', '=SUM(1,2)']です。
}
Return
Range - 連鎖用のセル範囲。
参照:Google Apps Script | REFERENCE | SpreadSheet | Class Range | Methods | trimWhitespace()
セル範囲リストクラス[RangeList]の空白文字削除
セル範囲リストのデータ空白文字削除メソッドです。
データ空白文字削除[trimWhitespace()]
trimWhitespace()
この範囲リスト内のすべてのセルの空白(スペース、タブ、改行など)を削除します。各セルのテキストの最初と最後からすべての空白を削除し、残りの空白文字のすべてのサブシーケンスを単一のスペースに減らします。
注:結果のトリミングされたテキストが「+」または「=」の文字で始まっている場合、テキストは文字列値として残り、式として解釈されません。
function trimWhitespaceSample() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
var range = sheet.getRange('A1:A4');
range.activate();
range.setValues(
[' preceding space', 'following space ', 'two middle spaces', ' =SUM(1,2)']);
var rangeList = sheet.getRangeList(['A1', 'A2', 'A3', 'A4']);
rangeList.trimWhitespace();
var values = range.getValues();
//値は['preceding space', 'following space', 'two middle spaces', '=SUM(1,2)']です。
}
Return
RangeList - 連鎖用のセル範囲リスト。
参照:Google Apps Script | REFERENCE | SpreadSheet | Class RangeList | Methods | trimWhitespace()
最後に
GASデータ空白文字削除機能のまとめをご紹介させていただきました。
必要に応じて、有益な情報でさらに更新していきたいと思います。
プログラミングスキルを向上させるためには、本を読むだけでは脳にインプットされませんね。
実際に手を動かしてアウトプットしまくるのが一番の近道だと思います。
実際にサンプルソースをコピーして実行した結果がどうなるかを体験してみてください。
自分なりのアレンジを加えたり、なぜエラーになるのかを考え、何度も試行錯誤して問題を解決しまくり、着実に理解しながらスキルを向上させていきましょう。
GASはExcelVBAとはかなり違いますが、ベースとなっているJavaScriptは覚えて損はないプログラミング言語なのでショートカットキーなどと組み合わせてぜひ活用してみてください。
Googleスプレッドシート全ショートカットキー一覧はこちら↓↓↓
ショートカットキー一覧にもGASメソッドを載せています。どの操作からどのメソッドが呼ばれるのかイメージしてください。
コメント