2022/05/26に更新

【GASで時短】スプレッドシートのメモを全て削除する

スプレッドシート小技

スプレッドシートに書き込まれた全ての「メモ」を削除するGoogle Apps Scriptです。思考の過程を隠したい時などにどうぞ。

こんな悩みを解決します


  • 自分の思考の経過がメモに残りまくっている・・・もう必要ないのでまとめて削除したい!

用意するもの


特にありません。今お使いのスプレッドシートに組み込めます。

このスクリプトで出来ること


  • 開いているスプレッドシートの全てのメモを削除することができます。

使い方


1.スクリプトの実行

シート1とシート2に、適当にメモを書き込みました。
空白セルにも意味もなくメモを書き込んでいます。

上のメニューにある「スクリプト実行」から「スプレッドシート内のすべてのメモを削除する」を実行します。

2.実行の確認

「このスプレッドシート内の全てのメモを削除します、よろしいですか?」と確認メッセージが表示されます。

3.結果の確認

しばらく待つと、メモが削除されました。
スクリーンショットで紹介できていませんが、実際には他の全シートのメモも削除されています。

スクリプト


/**
 * このスクリプトの説明、使い方はこちら。
 * https://myfunc.jp/items/00092/index.html
 */

function onOpen() {
  // スプレッドシートを開いたときに実行される関数

  // UIの取得
  const ui = SpreadsheetApp.getUi()

  // メニューの表示名
  const menu = ui.createMenu('スクリプト実行');

  // メニューに追加するボタン
  menu.addItem('スプレッドシート内のすべてのメモを削除する', 'delete_all_notes');

  // メニューを画面に追加する
  menu.addToUi();
}

function delete_all_notes() {

  // 画面にアラートを表示するためにUIオブジェクトを取得
  const ui = SpreadsheetApp.getUi();

  // 実行の確認メッセージを表示する
  const response = ui.alert('このスプレッドシート内の全てのメモを削除します\n\nよろしいですか?', ui.ButtonSet.OK_CANCEL);

  // キャンセルが押されたらスクリプトを終了する
  if (response == ui.Button.CANCEL) {
    return;
  }

  // 開いているスプレッドシートオブジェクトを取得
  const ss = SpreadsheetApp.getActiveSpreadsheet();

  // すべてのシートを取得する
  const sheets = ss.getSheets();

  // 1シートずつループして処理していく
  for (let i = 0; i < sheets.length; i++) {

    // 各シートのセル範囲を取得する
    // 「セルの値は入っていないがメモだけ書き込まれている」場合があるので、getLastRow()等は使えない
    let range = sheets[i].getRange(1, 1, sheets[i].getMaxRows(), sheets[i].getMaxColumns());

    // メモを消去する
    range.clearNote();

  }
}

関連するアプリ


【GASで便利に】キーワードを含むセル番地を一覧表示する

検索キーワードを全シートから探して、ヒットしたセル番地をまとめて表示するGoogle Apps Scriptです。標準の検索機能ではヒットしたセルが1個ずつ分かりますが、まとめて知りたくなったので作成しました。

【GASで時短】全シートに条件付き書式をセットする

すべてのシートに条件付き書式を適用してくれるGoogle Apps Scriptです。条件付き書式は便利ですが手動で設定するのは面倒なんですよね。

【GASで時短】全シートの条件付き書式を削除する

すべてのシートのすべての条件付き書式を削除するGoogle Apps Scriptです。条件付き書式はシート単位で操作する必要があり、面倒なので作成しました。

【GASで時短】全てのシートのデータを1シートにまとめる

スプレッドシートの全てのシートのデータを、1つのシートに集約するGoogle Apps Scriptです。各シートで列が揃っていないと使いにくいですが、思いつきで作ってみました。

【GASで時短】すべてのシートを非表示にする

いま開いているシート以外のすべてのシートを非表示にするGoogle Apps Scriptです。あまり見られたくない作業用シートがたくさんあるときにどうぞ。

【GASで時短】全シートの行・列固定を解除する

全てのシートの行固定、列固定を解除するGoogle Apps Scriptです。ニーズはあんまりなさそうですが、思いつきで作ってみました。

【GASで便利に】フィルタ条件がセットされている列を確認する

どの列にフィルタ条件が設定されているのか教えてくれるGoogle Apps Scriptです。列が大量にあると、どこに条件がかかっているのか探すのが大変ですよね。

【GASで時短】フォルダ内のスプレッドシートを結合する

指定したフォルダにあるスプレッドシートをすべて連結するGoogle Apps Scriptです。生徒・受講者の課題をチェックするときに1ファイルずつ開くのは面倒で、1つのスプレッドシート(ブック)にまとめたくなったので作りました。

【GASで時短】すべてのシートを保護する

スプレッドシートの全てのシートを「保護」するGoogle Apps Scriptです。一時的にすべてのシートの更新を止めたい時などにどうぞ。

タグ一覧

最新のアプリ

人気のアプリ

ページトップに戻る
myfunc.jp