GASでスプレッドシートの値を指定されたオプションで削除する

GASでスプレッドシートの値を指定されたオプションで削除する
くら
くら

GASでスプレッドシートの値を指定されたオプションで削除する方法を紹介します!

こんな人にむけた記事です。
  • GASを使って、スプレッドシートの指定範囲をいろんな方法で削除したい人
スポンサーリンク

指定範囲の値をすべて削除する:clear(options)

指定範囲の値について、コメント・値・書式・条件付き書式の削除を選択することができ、フィルターされた行をスキップすることができます。

パラメータ

名前 タイプ 説明
options Object 削除するコンテンツを指定

オプション

名前 タイプ 説明
commentsOnly Boolean メモが削除されます
contentsOnly Boolean 値が削除されます
formatOnly Boolean 書式が削除されます
validationsOnly Boolean データの入力規則が削除されます
skipFilteredRows Boolean フィルターされた行の削除はスキップされます

戻り値

Rangeセルの範囲

メモのみを削除する

function myFunction() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  const range = sheet.getRange('B2:D10');
  range.clear({
    commentsOnly: true,
    contentsOnly: false,
    formatOnly: false,
    validationsOnly: false,
    skipFilteredRows: false
  });
}

このような状態から、

clear() - 実行前1
実行前

サンプルコードを実行すると、

clear() - 実行後1
実行後

値のみを削除する

function myFunction() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  const range = sheet.getRange('B2:D10');
  range.clear({
    commentsOnly: false,
    contentsOnly: true,
    formatOnly: false,
    validationsOnly: false,
    skipFilteredRows: false
  });
}

このような状態から、

clear() - 実行前2
実行前

サンプルコードを実行すると、

clear() - 実行後2
実行後

書式のみを削除する

function myFunction() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  const range = sheet.getRange('B2:D10');
  range.clear({
    commentsOnly: false,
    contentsOnly: false,
    formatOnly: true,
    validationsOnly: false,
    skipFilteredRows: false
  });
}

このような状態から、

clear() - 実行前3
実行前

サンプルコードを実行すると、

clear() - 実行後3
実行後

データの入力規則のみを削除する

function myFunction() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  const range = sheet.getRange('B2:D10');
  range.clear({
    commentsOnly: false,
    contentsOnly: false,
    formatOnly: false,
    validationsOnly: true,
    skipFilteredRows: false
  });
}

このような状態から、

clear() - 実行前4
実行前

サンプルコードを実行すると、

clear() - 実行後4
実行後

削除対象からフィルターされた行はスキップする

function myFunction() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
  const range = sheet.getRange('A2:D10');
  range.clear({
    commentsOnly: false,
    contentsOnly: true,
    formatOnly: false,
    validationsOnly: false,
    skipFilteredRows: true
  });
}

このような状態から、

clear() - 実行前5 - 1
実行前

花子以外を表示させるようにフィルターを設定する

clear() - 実行前5 - 2
フィルターを設定
clear() - 実行前5 - 3
フィルター結果

サンプルコードを実行すると、

clear() - 実行後5 - 1
実行後

フィルターを解除すると、

clear() - 実行後5 - 2
フィルター解除後

フィルターがスキップされていることが確認できる。

公式ドキュメント:Range > clear(options)

まとめ

くら
くら

スプレッドシートで値を指定されたオプションで削除する方法でした!

ツールのデータクリア等に使えそうです!

すべてを削除する場合はこちらです!

clear()の使いみち
  • シート上のデータクリアはこのオプションを使いこなせば、ほとんど実現できます!

コメント

タイトルとURLをコピーしました