スプレッドシートの全てのシートを「保護」するGoogle Apps Scriptです。一時的にすべてのシートの更新を止めたい時などにどうぞ。
特にありません。今お使いのGoogleスプレッドシートに組み込めます。
サンプルとして複数のシートを作成しました。スクリプトを実行するとすべてのシートが保護されるはずです。
上のメニューにある「スクリプト実行」から「すべてのシートを保護する」を実行します。
「すべてのシートを自分以外が編集できないように保護します、よろしいですか?」と確認メッセージが表示されます。
暫く待つと、シート名に鍵アイコンが追加されました。保護されたようです。
/**
* このスクリプトの説明、使い方はこちら。
* https://myfunc.jp/items/00091/index.html
*/
function onOpen() {
// スプレッドシートを開いたときに実行される関数
// UIの取得
const ui = SpreadsheetApp.getUi()
// メニューの表示名
const menu = ui.createMenu('スクリプト実行');
// メニューに追加するボタン
menu.addItem('すべてのシートを保護する', 'protect_all_sheets');
// メニューを画面に追加する
menu.addToUi();
}
function protect_all_sheets() {
// 画面にアラートを表示するためにUIオブジェクトを取得
const ui = SpreadsheetApp.getUi();
// 実行の確認メッセージを表示する
const response1 = ui.alert('すべてのシートを自分以外が編集できないように保護します\n\nよろしいですか?', ui.ButtonSet.OK_CANCEL);
// キャンセルが押されたらスクリプトを終了する
if (response1 == ui.Button.CANCEL) {
return;
}
// スプレッドシートオブジェクトを取得
const ss = SpreadsheetApp.getActiveSpreadsheet();
// すべてのシートを取得
const sheets = ss.getSheets();
// 1つずつシートを保護していく
for (let i = 0; i < sheets.length; i++) {
let description = sheets[i].getName() + 'の保護'; // 説明文を作る
sheets[i].protect().setDescription(description); // シートを保護し、説明も登録する
}
}
検索キーワードを全シートから探して、ヒットしたセル番地をまとめて表示するGoogle Apps Scriptです。標準の検索機能ではヒットしたセルが1個ずつ分かりますが、まとめて知りたくなったので作成しました。
すべてのシートに条件付き書式を適用してくれるGoogle Apps Scriptです。条件付き書式は便利ですが手動で設定するのは面倒なんですよね。
すべてのシートのすべての条件付き書式を削除するGoogle Apps Scriptです。条件付き書式はシート単位で操作する必要があり、面倒なので作成しました。
スプレッドシートの全てのシートのデータを、1つのシートに集約するGoogle Apps Scriptです。各シートで列が揃っていないと使いにくいですが、思いつきで作ってみました。
いま開いているシート以外のすべてのシートを非表示にするGoogle Apps Scriptです。あまり見られたくない作業用シートがたくさんあるときにどうぞ。
全てのシートの行固定、列固定を解除するGoogle Apps Scriptです。ニーズはあんまりなさそうですが、思いつきで作ってみました。
どの列にフィルタ条件が設定されているのか教えてくれるGoogle Apps Scriptです。列が大量にあると、どこに条件がかかっているのか探すのが大変ですよね。
指定したフォルダにあるスプレッドシートをすべて連結するGoogle Apps Scriptです。生徒・受講者の課題をチェックするときに1ファイルずつ開くのは面倒で、1つのスプレッドシート(ブック)にまとめたくなったので作りました。
すべてのシートを対象に、保護されたセルをすべて解除する Google Apps Scriptです。保護をまとめて解除したいときにどうぞ。
スプレッドシートに存在する全シートの目次(リンク付き)を生成するGoogle Apps Scriptです。シートが増えすぎて移動が大変なときにどうぞ。
指定したユーザーによるGASの実行をブロックするGoogle Apps Scriptです。ブラックリスト方式で制御したいときに。
今開いているシートを先頭(一番左)や、最後(一番右)に移動するGoogle Apps Scriptです。シートが増えすぎてドラッグが大変なときにどうぞ。