Yuki's bnb blog

こんにちは!Yukiといいます。本業のかたわら大阪で2016年夏から民泊運営のお手伝いをしています。民泊業務に関する様々なことを自動化・効率化したいと思い日々活動しています。 お気軽にコメント・お問い合わせください :) TOEICスコア 985

【コピペでOK!GAS基本操作】シートの特定範囲のデータをクリアする方法

f:id:yukibnb:20200608192317p:plain

こんにちは!
Yuki (@yukibnb) です。

前回はGoogle Apps Script(GAS)を使ってスプレッドシートのシートのデータを一括クリアする方法を紹介しました。
www.yukibnb.com


今回はGoogle Apps Script(GAS)を使ってスプレッドシートの特定範囲のデータをクリアする方法を紹介します。

さっそく見ていきましょう!

 

コピペでOK!特定範囲のデータをクリアする方法

f:id:yukibnb:20200608192608p:plain

上記画像の「売値リスト」シートを例に見ていきましょう。

「売値リスト」シートのB2セル~E11セルのデータをクリアしたいとします。

本記事では3種類の方法を紹介します。

  • Clear》すべてをクリアする
  • clearContent》コンテンツをクリアする
  • clearFormat》書式をクリアする

状況に応じてお好きな方法を使用ください。

 

《clear》すべてをクリアする

f:id:yukibnb:20200608192833p:plain

範囲内の文字だけでなく、文字色・背景色・罫線などの書式などもすべてクリアするには、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セルのすべてがクリアされ、まっさらになります。

f:id:yukibnb:20200608193747g:plain

 

《clearContent》コンテンツをクリアする

f:id:yukibnb:20200608195314p:plain

範囲内の文字などのコンテンツだけクリアするには、clearContentメソッドを使用します。

文字色・背景色・罫線などの書式はクリアされません。

clearContentメソッドもRangeオブジェクトに対して使用します。

  var ss = SpreadsheetApp.getActiveSpreadsheet();

  //シート名は置き換えてください。
  var sh = ss.getSheetByName("売値リスト");

  //範囲内のコンテンツをクリアする
  sh.getRange(2,2,10,4).clearContent();

 
GASを実行すると以下のように「売値リスト」シートのB2セル~E11セルのコンテンツがクリアされます。

書式はクリアされず残ったままです。

f:id:yukibnb:20200608194320g:plain

 

注意

シートのコンテンツをすべてクリアするにはSheetオブジェクトに対してclearContentsメソッドを使用しますが、今回のように特定範囲のコンテンツをクリアするにはRangeオブジェクトに対してclearContentメソッドを使用します。

末尾のsは不要ですのでご注意ください。

 

《clearFormat》書式をクリアする

f:id:yukibnb:20200608195546p:plain

範囲内の文字色・背景色・罫線などの書式だけクリアするには、clearFormatメソッドを使用します。

文字などのコンテンツはクリアされません。

clearFormatメソッドもRangeオブジェクトに対して使用します。

  var ss = SpreadsheetApp.getActiveSpreadsheet();

  //シート名は置き換えてください。
  var sh = ss.getSheetByName("売値リスト");

  //範囲内の書式をクリアする
  sh.getRange(2,2,10,4).clearFormat();

 
GASを実行すると以下のように「売値リスト」シートのB2セル~E11セルの書式がクリアされます。

コンテンツはクリアされず残ったままです。

f:id:yukibnb:20200608195757g:plain

 

注意

シートの書式をすべてクリアするにはSheetオブジェクトに対してclearFormatsメソッドを使用しますが、今回のように特定範囲の書式をクリアするにはRangeオブジェクトに対してclearFormatメソッドを使用します。

末尾のsは不要ですのでご注意ください。

 

まとめ

今回はGoogle Apps Script(GAS)を使ってスプレッドシートの特定範囲のデータをクリアする方法を紹介しました。

前回紹介したシートのデータを一括クリアする方法と合わせて、状況に応じて使い分けください。