コンテンツへスキップ
超解決
  • トップページ
  • 詐欺メールチェッカー
  • テキスト整形ツール
  • 高機能・文字数カウント(自動保存付き)
  • パスワード生成ツール
  • 全記事一覧(サイトマップ)
  1. ホーム
  2. デジタル・IT
  3. Web・アプリ
  4. Googleスプレッドシート
  5. 【Googleスプレッドシート】範囲ごとに違う権限を割り当てる手順!セル単位のアクセス制御

【Googleスプレッドシート】範囲ごとに違う権限を割り当てる手順!セル単位のアクセス制御

2026年5月4日2026年6月22日
Googleスプレッドシート 会社アカウント・認証
【Googleスプレッドシート】範囲ごとに違う権限を割り当てる手順!セル単位のアクセス制御
🛡️ 超解決

Googleスプレッドシートを複数人で共有していると、特定のセル範囲だけ編集させたい、あるいは重要な列を誤って変更されたくないと感じることはありませんか。ファイル全体を編集不可にしてしまうと、他の人が必要な箇所を変更できず不便です。本記事では、範囲ごとに異なる権限を割り当てる方法を詳しく説明します。保護範囲の設定とApps Scriptを使った高度な制御の2つの手法を紹介しますので、目的に合わせて使い分けられます。

【要点】範囲ごとの権限設定で安全な共同編集を実現

  • 保護範囲の設定: 特定のセル範囲をロックして、編集できるユーザーだけに権限を与えます。
  • Apps ScriptのsetProtections: スクリプトで動的に保護範囲を作成し、グループごとに異なる権限を割り当てられます。
  • 条件付き保護: 特定の条件(日付やステータスなど)に応じて保護範囲を自動制御する方法も解説します。

ADVERTISEMENT

目次

  • 1 Googleスプレッドシートの権限設定の基本
  • 2 保護範囲を使ってセル単位で権限を設定する手順
    • 2.1 保護範囲の設定例:売上管理表でセル単位の権限を分ける
  • 3 Apps Scriptで動的な権限制御を行う手順
  • 4 保護範囲設定の注意点とトラブル対応
    • 4.1 保護範囲が意図した通りに動作しない
    • 4.2 保護範囲の制限に引っかかる
    • 4.3 グループメールを使う際の注意
  • 5 保護範囲とApps Scriptの比較
  • 6 まとめ
    • 6.1 解決 関連記事でさらに詳しく
    • 6.2 Googleスプレッドシートの人気記事ランキング

Googleスプレッドシートの権限設定の基本

Googleスプレッドシートでは、ファイル全体の共有権限(閲覧・編集・コメント)とは別に、シート内の特定の範囲に追加の制限をかけられます。これを「保護範囲」と呼びます。保護範囲を設定すると、その範囲を編集できるユーザーを個別に指定できるため、例えば「A列は全員編集不可、B列は特定のメンバーのみ編集可」といった細かい制御が可能です。権限はファイルの共有設定で編集権限があるユーザーに対してのみ機能します。つまり、保護範囲の設定は編集権限を持つユーザーの中でさらに制限をかける仕組みです。

また、より複雑な権限制御を行いたい場合は、Google Apps Script(GAS)を使用します。スクリプトを使えば、シートの状態やユーザー情報に応じて動的に保護範囲を変更したり、特定の条件で一時的に制限を解除したりできます。本記事では、初心者向けの保護範囲設定から、応用としてのスクリプト制御までを順に解説します。

※ お探しの解決策が見つからない場合は、こちらの「会社アカウント・認証トラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

保護範囲を使ってセル単位で権限を設定する手順

まずは最も簡単な方法である「保護範囲」の設定手順を説明します。この方法では、シート上の任意の範囲をロックし、編集を許可するユーザーを指定できます。

  1. 保護したい範囲を選択する
    シート上でロックしたいセルや列・行をドラッグして選択します。複数の範囲を同時に選択する場合はCtrlキーを押しながら選択します。
  2. 「データ」メニューから「保護範囲」を開く
    画面上部のメニューから「データ」→「保護範囲」をクリックします。またはシートを右クリックして「その他の操作」→「保護範囲」からもアクセスできます。
  3. 保護範囲の名前と範囲を確認する
    右側に表示されるパネルで、保護する範囲が正しいか確認します。範囲は後から変更できます。
  4. 権限を設定する
    「権限を設定」をクリックし、ドロップダウンから「特定のユーザーを除くすべてのユーザー」または「自分のみ」を選択します。編集を許可したいユーザーのメールアドレスを追加します。
  5. 設定を保存する
    「完了」をクリックすると、設定が反映されます。保護された範囲は灰色の斜線で表示され、許可されていないユーザーが編集しようとすると警告が表示されます。

この方法で、複数の範囲にそれぞれ異なる権限を設定することも可能です。例えば、Sheet1のA1:C10は編集不可、D1:F10は特定のユーザーのみ編集可、といった運用が簡単に行えます。ただし、保護範囲の数には制限があります(シートあたり100個まで)。

保護範囲の設定例:売上管理表でセル単位の権限を分ける

実際の業務でよくあるケースとして、売上管理表を例に説明します。表には「売上金額」の列と「担当者名」の列があり、営業部のメンバーには担当者名の編集を許可し、金額の列は管理者のみ編集可能にしたいとします。

  1. 売上金額の列(例:C列全体)を選択
    列ヘッダーをクリックしてC列を選択します。
  2. 保護範囲を設定
    「データ」→「保護範囲」を開き、権限で「自分のみ」を選択します。これで自分だけがC列を編集できます。
  3. 担当者名の列(例:B列)に別の保護範囲を設定
    同様にB列を選択し、権限で「特定のユーザー」を選び、営業部メンバーのメールアドレスを追加します。

これで、営業部メンバーはB列のみ編集可能、C列は自分(管理者)だけが編集できる状態になります。ファイル全体の共有設定で「編集者」権限を与えられているすべてのユーザーは、保護範囲の制限を受けます。

Apps Scriptで動的な権限制御を行う手順

保護範囲の設定はシンプルですが、ユーザー数が多い場合や、毎回手動で設定するのが手間な場合には、Google Apps Scriptを利用すると効率的です。スクリプトを使えば、シートの初期化時や特定のトリガーで自動的に保護範囲を作成できます。ここでは、特定のグループ(例:編集者グループ)に対してのみ編集を許可する範囲を、スクリプトで作成する方法を説明します。

  1. Apps Scriptエディタを開く
    スプレッドシートのメニューから「拡張機能」→「Apps Script」をクリックします。
  2. スクリプトコードを記述する
    以下のコードをコピーして貼り付けます。
function setProtections() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('シート1');
  // 保護範囲1: A1:C10(全員編集不可)
  var range1 = sheet.getRange('A1:C10');
  var protection1 = range1.protect().setDescription('管理範囲');
  protection1.removeEditors(protection1.getEditors());
  // 特定ユーザーを追加(例:admin@example.com)
  protection1.addEditor('admin@example.com');
  
  // 保護範囲2: D1:F10(特定グループのみ編集可)
  var range2 = sheet.getRange('D1:F10');
  var protection2 = range2.protect().setDescription('営業部範囲');
  protection2.removeEditors(protection2.getEditors());
  var groupEmail = 'sales@example.com'; // Googleグループのメールアドレス
  protection2.addEditor(groupEmail);
}

このコードでは、シート1のA1:C10を管理者のみ編集可に、D1:F10を特定のGoogleグループのみ編集可に設定しています。グループを使用することで、個別のメールアドレスを追加する手間が省けます。

  1. スクリプトを実行する
    エディタ上部の実行ボタン(▶)をクリックします。初回は権限の承認が必要です。「権限を確認」→「許可」をクリックします。
  2. 自動実行のトリガーを設定する(オプション)
    定期的に保護範囲を更新したい場合は、時限トリガーを設定します。エディタの左側の「トリガー」アイコンをクリックし、「トリガーを追加」で「時間主導型」を選択し、例えば「1時間おき」に設定します。

Apps Scriptを使うことで、シートが開かれたときや編集されたときなど、イベントに応じて動的に権限を変更することも可能です。例えば、特定のセルに「承認」と入力されたら保護範囲を解除する、といった高度な制御が行えます。

保護範囲設定の注意点とトラブル対応

保護範囲が意図した通りに動作しない

保護範囲を設定しても、編集権限を持つユーザーが範囲を編集できてしまう場合があります。考えられる原因は以下の通りです。

  • 保護範囲の権限設定で「自分のみ」を選んだが、自分以外が編集できてしまう
    ファイルの共有設定で自分以外のユーザーが「編集者」になっている場合、そのユーザーは保護範囲の対象外になっている可能性があります。保護範囲の権限で「特定のユーザー」を選び、編集を許可するユーザーを明示的に指定し直してください。
  • 範囲が正しく選択されていない
    保護範囲が行や列全体ではなく、一部のセルだけが選択されていないか確認します。保護範囲パネルで範囲のプレビューをご確認ください。
  • 他の保護範囲と重複している
    同じ範囲に複数の保護範囲が設定されていると、最も制限の少ない設定が優先されます。重複を避けるか、設定を見直してください。

保護範囲の制限に引っかかる

Googleスプレッドシートの保護範囲には以下の制限があります。

  • シートあたり最大100個の保護範囲
  • 1つの保護範囲に追加できる編集者は100人まで
  • 保護範囲はシート内でのみ機能し、別のシートにまたがることはできません
  • Apps Scriptで保護範囲を作成する場合、1回の実行で作成できる保護範囲の数に制限はありませんが、GoogleのAPI割り当てに注意してください

大量の保護範囲が必要な場合は、シートを分割するか、スクリプトで一括管理することをおすすめします。

グループメールを使う際の注意

保護範囲の編集者としてGoogleグループ(例:sales@example.com)を追加する場合、そのグループが「編集者」としてファイルの共有設定に含まれている必要があります。グループ自体にファイルの編集権限がないと、保護範囲の設定はできても実際に編集できません。また、グループのメンバー変更は自動的に反映されますが、反映までに時間がかかることがあります。

保護範囲とApps Scriptの比較

項目 保護範囲 Apps Script
設定の手軽さ GUIで簡単に設定可能 コード記述が必要でやや複雑
動的な制御 手動での変更のみ トリガーや条件に応じて自動変更可能
ユーザー管理 個別のメールアドレスまたはGoogleグループ メールアドレス、グループ、ドメインなど柔軟に指定可能
制限 シートあたり100個まで API割り当てに依存(1日あたりの実行回数制限あり)
適した用途 小規模・固定的な権限制御 大規模・複雑なルールが必要な場合

まとめ

本記事では、Googleスプレッドシートで範囲ごとに異なる権限を割り当てる方法を解説しました。保護範囲を使えば、簡単な操作でセル単位のアクセス制御が可能です。より高度な制御が必要な場合は、Apps Scriptを活用することで、動的かつ自動化された権限管理を実現できます。まずは保護範囲を試してみて、運用に応じてスクリプトに移行するのがおすすめです。また、Googleグループと組み合わせると、チーム全体の権限管理が効率的になります。これらの方法を活用して、安全で効率的な共同編集環境を整えてください。


🔐
会社アカウント・認証トラブル完全解決データベース 職場または学校アカウント、MFA、Authenticator、VPN、権限、会社ポリシーで止まる問題を横断的に確認できます。
この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

解決 関連記事でさらに詳しく

  • 💡【Box】Box Shieldの異常検知アラートで権限が足りないと出る時の同期状態と端末設定の直し方
  • ✅【Googleアカウント】Googleアカウントで社外ネットワークからログインできない時の対処法
  • 🔎【Microsoft Authenticator】会社アカウント追加のパスワード変更後に入れない時の安全な見直し方
  • 💡【Outlook】個別フォルダのアクセス権限を細かく付与する方法
  • ⚡【Windows】会社PCのプリンター共有でゲストユーザーが入れない時の招待状態と組織設定
  • ✅【Gmail】メール本文のリンクだけ相手側で無効になる場合の共有権限確認

Googleスプレッドシートの人気記事ランキング

  • 【Googleスプレッドシート】ショートカットキー一覧!Ctrl+/で表示する効率化の入口
  • 【Googleスプレッドシート】行を一括追加!複数行をまとめて挿入
  • 【Googleスプレッドシート】ダークモードを有効にする!目に優しい配色への切替
  • 【Googleスプレッドシート】テンプレートギャラリーを使い倒すコツ!業務別の活用例
  • 【Googleスプレッドシート】Apps Scriptが動かない・実行されない時のチェックポイント
  • 【Googleスプレッドシート】行・列の入れ替え!ドラッグ&ドロップでの並べ替え
  • 【Googleスプレッドシート】Excel関数とSheets関数の互換性!動かない関数の代替手段
  • 【Googleスプレッドシート】セルを結合する手順と解除!縦・横・全結合の違い
  • 【Googleスプレッドシート】文字の色を変更!セル内の色設定
  • 【Googleスプレッドシート】共有権限の閲覧者・コメント可・編集者の違い!使い分けの指針
Googleスプレッドシート 会社アカウント・認証
Googleスプレッドシート 会社アカウント・認証 共有・コラボレーション 権限・アクセス許可
  • 【Googleスプレッドシート】シート保護とセル範囲保護の使い分け!粒度の選び方
  • 【Googleスプレッドシート】ドキュメント全体に編集権限を付与する設定!誰でも編集の落とし穴
⚠️
【最新】通信・アプリ障害まとめ 更新中 リアルタイムで発生中の障害を即チェック
🔴 速報・最新トラブル
  • 08.13 Win 【速報 2026年8月】Windows 11 KB5121003を配信|24H2・25H2の更新内容と既知の問題
  • 07.30 Win 【速報 2026年7月】Windows 11 KB5101684を配信|MDM・DFS・SMBバックアップの不具合を修正
  • 07.29 【速報 2026年7月】ChatGPTで会話が読み込めない・続けられない時の公式障害と復旧状況
  • 07.25 Win 【速報 2026年7月】Windows Update KB5121767を配信|一部PCで7月更新が入らない問題を修正
  • 07.22 Win 【速報 2026年7月】Windows更新後に社内システムへログインできない時のKerberos RC4制限確認
  • 07.21 Win 【速報 2026年7月】WSUS同期が遅い・タイムアウトする不具合|Microsoft公式の状況と会社PCへの影響
  • 07.19 【WordPress】7.0.2で重大な脆弱性を修正|対象バージョンと更新確認
  • 07.18 【2026年7月18日】佐川急便スマートクラブで個人情報漏えい|通知メールの誤表示と確認方法
  • 07.16 【2026年7月16日】AWSで広範囲の障害|EC2・S3・DynamoDBなどの影響と確認方法
Windows・業務ツール 更新・不具合の最新情報 公式発表と速報を時系列で確認 →
🔍 落とし物トラブル解決
🔍
落とし物発見ナビ 3ステップ診断で発見ルートを提示・PNG保存可
📚
落とし物解決DB 電車・バス・空港・海外・ペット網羅
📚 ITトラブル解決DB
💻
Windows解決DB 不具合・設定・エラーを完全解決
🧭
Edge解決DB 表示・パスワード・拡張機能を完全解決
📊
Excel解決DB エラー・不具合の対処法を網羅
📝
Word解決DB 不具合・書式・設定のトラブル解消
✨
Copilot解決DB 使い方・エラー・設定を完全解決
👥
Teams/Outlook解決DB 接続・サインイン・送受信の不具合解消
📽️
PowerPoint解決DB マスター固定・図形結合・動画再生の解消
📑
PDFトラブル解決DB 閲覧・編集・結合・印刷のエラー解消
🏛️
確定申告解決DB e-Tax・マイナンバーカードの不具合解消
📱
Facebook解決DB 乗っ取り・権限譲渡・ログイン障害に対応
📗
Sheets解決DB 関数エラー・Apps Script・共有の解消
📝
Docs解決DB 書式・共有・Apps Script・参考文献の解消
🎥
Zoom解決DB 参加・画面共有・録画・Webinarの解消
✨
生成AI解決DB 基礎・料金・著作権・社内ルールの解消
🍎
iPhone解決DB 起動・Wi-Fi・アプリ・設定の解消
🤖
Android解決DB 設定・アプリ・通信・カスタマイズの解消
🔐
会社アカウント認証DB MFA・サインイン・VPN・権限の不具合解消
🔗
社内ネットワーク・VPN DB接続・共有・RDP・DNS・社内制限を解決
☁
OneDrive・SharePoint DB同期・共有・権限・復元の不具合解消
📄
勤怠・給与・人事 DB打刻・給与明細・人事通知・認証トラブル
🧩
Notion解決DB 共有・権限・DB・AIの不具合解消

ADVERTISEMENT

   🔧 ツール
🛡️
詐欺メール判定 届いたメールを即座に診断
📦
送料最安シミュレーター            郵便・宅急便の最安料金を比較
✂️
テキスト自動整形 全角半角・改行削除を一発で
📝
文字数カウント 自動保存付き・レポート作成
🔒
パスワード生成 強力なパスワードを安全作成
📅
西暦・和暦変換 履歴書の年号・年齢を計算
🧩 診断・チェック
🏆
超解決 Excel検定 実務能力を1級〜3級で判定
📘
超解決 Word検定 文書作成のスキルを格付け
🦆
騙されやすさ診断 あなたは「歩くATM」かも?
Global Edition
WiseChecker
🔐🧠📦

超解決の「海外版」姉妹サイト。
世界標準のパスワード生成や
性格診断・送料計算はこちら。

海外版サイトへ移動 ✈️
  • トップページ
  • 本サイトについて・運営企業情報
  • 著書の紹介
  • プライバシーポリシー

© 超解決.