2021/11/10に更新

【GASで品質向上】特定のセルが編集されたときにメッセージを表示する

スプレッドシート業務改善小技

特定のセルが編集されたときにメッセージを表示するGoogle Apps Scriptです。編集をさせたくないときは保護してしまえばよいのですが、編集後に「本当にその内容で大丈夫?」と振り返って欲しいときに使えるかもしれません。ユーザによるスクリプトの動作承認は不要です。

こんな悩みを解決します


  • スプレッドシートの特定のセルに、大事な値が入っている。あまり編集してほしくないが、保護してしまうと業務が回らない。
  • 編集した場合は確認を促したい。

用意するもの


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

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


  • スプレッドシートの指定したセルが編集されたときに、メッセージを表示する。

使い方


1.セルの指定およびメッセージの準備

GASのスクリプトエディタで、セルおよび表示したいメッセージを指定します。
8行目に編集を監視するセルを指定します。A1形式で複数の指定が可能です。範囲指定も可能ですが、メッセージが表示されるのは指定した範囲と完全に同一だった場合に限ります。
この例では「A1」セルのみ、「C1」セルのみ、「A1:C1」の範囲の3つのパターンを登録しています。

18行目にサンプルメッセージが書いてありますので、これを参考に書き換えてください。
改行は\\n(バックスラッシュ2個とn)で使うことができます。

2.動作の確認

スプレッドシートを一度閉じて開き直すか、リロードします。
指定したセルを編集した際に、メッセージが表示されることを確認してください。

スクリプト


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

function onEdit(e) {
  // セルの値が変わったときに実行される関数

  // 値が変わったときに警告を出したいセルを定義する
  // 原則として1つのセルが変更された場合を想定しています。
  // 範囲選択->消去 などに対応させる場合は範囲を定義しておけばアラートを出せますが、ユーザが定義と完全に一致する範囲を選択してくれないと反応しません。
  // 例:定義にA1:C1と書いたら、ユーザがA1からC1を選択&編集したときのみアラートが出ます。B1が編集された場合はアラートを出せません。
  const inspection_cell = ['A1', 'C1', 'A1:C1'];

  // 編集されたセルのアドレスを取得
  const changed_cell = e.range.getA1Notation();

  // 編集されたセルが、チェック対象に含まれるかどうかを調べる
  for (var i = 0; i < inspection_cell.length; i++) {
    if (changed_cell == inspection_cell[i]) {

      // 含まれている場合はアラートを表示してスクリプトを終了する
      Browser.msgBox(changed_cell + 'は非常に大事なセルです。\nその大事なセルをあなたは編集しました。\n大丈夫ですか?');
      return;
    }
  }
}

関連するアプリ


【GASで便利に】スプレッドシートを開いたときにメッセージを表示する

スプレッドシートを開いたときにメッセージを表示するGoogle Apps Scriptです。更新履歴などのお知らせ、業務の引き継ぎ、注意事項などを表示するのに使えます。ユーザーによるスクリプトの動作承認は不要です。

【GASで便利に】スライドを開いたときにメッセージを表示する

スライドを開いたときにメッセージを表示するGoogle Apps Scriptです。更新履歴などのお知らせ、業務の引き継ぎ、注意事項などを表示するのに使えます。ユーザーによるスクリプトの動作承認は不要です。

【GASで便利に】ドキュメントを開いたときにメッセージを表示する

ドキュメントを開いたときにメッセージを表示するGoogle Apps Scriptです。更新履歴などのお知らせ、業務の引き継ぎ、注意事項などを表示するのに使えます。ユーザーによるスクリプトの動作承認は不要です。

【GASで品質向上】特定のセルが編集されたときにメールで通知する

特定のセルが編集されたときにメールを送信するGoogle Apps Scriptです。大事な部分が更新された時にすぐに知りたいときに使えるかもしれません。

【GASで品質向上】長い数式が入っているセルにメモを入れてもらう

一定の文字数以上で構成された数式が入っているセルを探し、そのセルにメモが入っているかどうかをチェックするGoogle Apps Scriptです。長い数式はわかりにくいので説明を書いてもらうために作りました。

【GASで品質向上】全角英数が入力されたらアラートを出す

スプレッドシートに「全角の数字、アルファベット」が入力されたら警告を表示するGoogle Apps Scriptです。全角が許されない現場にどうぞ。

タグ一覧

最新のアプリ

人気のアプリ

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