こんにちは!
Yuki (@yukibnb) です。
前回はGoogle Apps Script(GAS)を使ってスプレッドシートのシートのデータを一括クリアする方法を紹介しました。
www.yukibnb.com
今回はGoogle Apps Script(GAS)を使ってスプレッドシートの特定範囲のデータをクリアする方法を紹介します。
さっそく見ていきましょう!
コピペでOK!特定範囲のデータをクリアする方法
上記画像の「売値リスト」シートを例に見ていきましょう。
「売値リスト」シートのB2セル~E11セルのデータをクリアしたいとします。
本記事では3種類の方法を紹介します。
- 《Clear》すべてをクリアする
- 《clearContent》コンテンツをクリアする
- 《clearFormat》書式をクリアする
状況に応じてお好きな方法を使用ください。
《clear》すべてをクリアする
範囲内の文字だけでなく、文字色・背景色・罫線などの書式などもすべてクリアするには、clearメソッドを使用します。
今回clearメソッドはRangeオブジェクトに対して使用します。
つまりgetRangeメソッドを使って範囲(今回はB2セル~E11セル)を指定し、それに対してclearメソッドを使用します。
var ss = SpreadsheetApp.getActiveSpreadsheet(); //シート名は置き換えてください。 var sh = ss.getSheetByName("売値リスト"); //範囲内(B2セル~E11セル)のすべてをクリアする sh.getRange(2,2,10,4).clear();
B2セル~E11セルはgetRange(2,2,10,4)
で指定します。
getRangeを用いた範囲の指定方法がよくわからない場合、以下記事をご覧ください。
www.yukibnb.com
GASを実行すると以下のように「売値リスト」シートのB2セル~E11セルのすべてがクリアされ、まっさらになります。
《clearContent》コンテンツをクリアする
範囲内の文字などのコンテンツだけクリアするには、clearContentメソッドを使用します。
文字色・背景色・罫線などの書式はクリアされません。
clearContentメソッドもRangeオブジェクトに対して使用します。
var ss = SpreadsheetApp.getActiveSpreadsheet(); //シート名は置き換えてください。 var sh = ss.getSheetByName("売値リスト"); //範囲内のコンテンツをクリアする sh.getRange(2,2,10,4).clearContent();
GASを実行すると以下のように「売値リスト」シートのB2セル~E11セルのコンテンツがクリアされます。
書式はクリアされず残ったままです。
シートのコンテンツをすべてクリアするにはSheetオブジェクトに対してclearContents
メソッドを使用しますが、今回のように特定範囲のコンテンツをクリアするにはRangeオブジェクトに対してclearContent
メソッドを使用します。
末尾のs
は不要ですのでご注意ください。
《clearFormat》書式をクリアする
範囲内の文字色・背景色・罫線などの書式だけクリアするには、clearFormatメソッドを使用します。
文字などのコンテンツはクリアされません。
clearFormatメソッドもRangeオブジェクトに対して使用します。
var ss = SpreadsheetApp.getActiveSpreadsheet(); //シート名は置き換えてください。 var sh = ss.getSheetByName("売値リスト"); //範囲内の書式をクリアする sh.getRange(2,2,10,4).clearFormat();
GASを実行すると以下のように「売値リスト」シートのB2セル~E11セルの書式がクリアされます。
コンテンツはクリアされず残ったままです。
シートの書式をすべてクリアするにはSheetオブジェクトに対してclearFormats
メソッドを使用しますが、今回のように特定範囲の書式をクリアするにはRangeオブジェクトに対してclearFormat
メソッドを使用します。
末尾のs
は不要ですのでご注意ください。
まとめ
今回はGoogle Apps Script(GAS)を使ってスプレッドシートの特定範囲のデータをクリアする方法を紹介しました。
前回紹介したシートのデータを一括クリアする方法と合わせて、状況に応じて使い分けください。