GAS

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

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

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

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

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

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

パラメータ

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

オプション

名前タイプ説明
commentsOnlyBooleanメモが削除されます
contentsOnlyBoolean値が削除されます
formatOnlyBoolean書式が削除されます
validationsOnlyBooleanデータの入力規則が削除されます
skipFilteredRowsBooleanフィルターされた行の削除はスキップされます

戻り値

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をコピーしました