
こんにちは!
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)を使ってスプレッドシートの特定範囲のデータをクリアする方法を紹介しました。
前回紹介したシートのデータを一括クリアする方法と合わせて、状況に応じて使い分けください。