「ちゃんと共有されたはずなのに、なぜか閲覧しかできない…」「編集ボタンが見当たらない…」そんな経験、ありませんか?Googleスプレッドシートを使ったチーム作業で、共有されたシートが閲覧専用になっていると、作業がまったく進まず焦りますよね。実はこの問題、原因はひとつではありません。権限設定のミスからブラウザの不具合、さらにはGoogleアカウントの切り替え忘れまで、思いもよらない落とし穴がいくつも潜んでいます。
この記事では、スプレッドシートで共有後に閲覧しかできない原因を徹底的に洗い出し、それぞれの解決策を初心者でもわかるように丁寧に解説します。さらに、2026年2月時点の最新情報として、GeminiのAI機能がスプレッドシートに統合された最新のWorkspace環境での権限管理のコツもお伝えします。
- 共有後に閲覧しかできなくなる7つの原因と、それぞれの具体的な対処法がすべてわかる
- オーナー側・閲覧者側の両方の視点から、編集権限を正しく設定・リクエストする手順を完全網羅
- シートやセル範囲の保護設定、Googleグループ活用など上級テクニックまでカバー
- スプレッドシートで共有後に閲覧しかできない原因はこの7つ
- 閲覧者から編集者に変更してもらう方法
- 権限の種類を正しく理解しよう
- 特定のシートやセル範囲だけを保護する上級テクニック
- 共有設定のセキュリティを強化するためのベストプラクティス
- 2026年最新のGemini連携で権限管理がさらに便利に
- 「ウェブに公開」と「共有」の違いを知っておこう
- 情シス歴10年超の現場視点で語る「本当に効く」トラブルシューティング
- GASで権限管理を自動化する実用スクリプト集
- 現場でよく遭遇するけど解決策がわかりにくい問題と対処法
- 情シスが教える「やっておくと後で絶対助かる」事前対策
- ぶっちゃけこうした方がいい!
- スプレッドシートで共有後に閲覧しかできないに関するよくある質問
- 今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
- まとめ
スプレッドシートで共有後に閲覧しかできない原因はこの7つ
まずは「なぜ閲覧しかできないのか?」を正確に突き止めることが大切です。原因がわかれば、対処はとてもシンプルになります。ここでは、よくある原因を7つに絞って紹介します。自分がどのケースに当てはまるかチェックしてみてください。
権限が「閲覧者」のまま共有されている
もっとも多い原因がこれです。Googleスプレッドシートでリンクを共有するとき、デフォルトの権限は「閲覧者」に設定されています。つまり、共有した側がわざわざ「編集者」に変更しない限り、受け取った側は見ることしかできません。共有する側が「リンクを送ったから大丈夫」と思い込んでいるケースが非常に多く、ここが最大の落とし穴になっています。
ログインしているGoogleアカウントが違う
意外と見落としがちなのが、別のGoogleアカウントでログインしているパターンです。たとえば、仕事用と個人用で複数のGoogleアカウントを持っている人は、権限が付与されたアカウントとは別のアカウントでスプレッドシートを開いてしまうことがあります。この場合、当然ながら権限は反映されず閲覧専用になります。画面の右上に表示されているアイコンをクリックして、今どのアカウントでログインしているか確認してみましょう。
シートやセル範囲が保護されている
スプレッドシート全体の編集権限を持っていても、特定のシートやセル範囲が「保護」されていると、その部分だけ編集できません。オーナーが計算式や重要なデータを壊されないように保護設定をかけているケースです。この場合、編集しようとすると「このセルは保護されています」というメッセージが表示されます。保護と権限は別の仕組みなので、混乱しやすいポイントです。
組織のGoogle Workspaceポリシーで制限されている
会社や学校でGoogle Workspaceを利用している場合、管理者が外部との共有を制限している可能性があります。たとえば、社外のGoogleアカウントからのアクセスを一律で禁止するポリシーが設定されていると、どんなに権限を付与しても編集できません。この場合は、IT管理者に相談して例外設定を依頼するしかありません。
ファイルのオーナーがストレージ上限に達している
2025年以降、Googleはオーナーのストレージ容量が上限に達した場合、そのオーナーが所有するファイルを閲覧専用にする仕様を強化しています。オーナー本人ですら編集できなくなることがあるので、「昨日まで編集できていたのに急に閲覧専用になった」という場合は、オーナーのストレージ残量を確認してもらいましょう。Googleドライブの容量が15GBの無料枠を超えていないかがポイントです。
ブラウザのキャッシュや拡張機能が邪魔している
権限は正しく設定されているのに編集できない場合、ブラウザ側に問題があることがあります。古いキャッシュが残っていたり、広告ブロッカーなどの拡張機能がGoogleのスクリプトと干渉したりすると、編集機能が正常に動作しません。シークレットモード(Chromeなら
Ctrl+Shift+N
)で同じURLを開いてみて、編集できるかどうか試すのが最速の切り分け方法です。
ファイルサイズが大きすぎてパフォーマンスが低下している
Googleスプレッドシートは最大1,000万セルまで対応していますが、データ量が膨大になると読み込みや編集に時間がかかり、一時的に閲覧専用のような状態になることがあります。大量の数式や条件付き書式が含まれるシートでは特にこの現象が起きやすいです。不要なシートを削除したり、数式を値に置き換えたりしてファイルを軽量化しましょう。
閲覧者から編集者に変更してもらう方法
原因がわかったら、次は解決です。ここでは、共有された側(閲覧者)が編集権限をリクエストする方法と、共有した側(オーナー・編集者)が権限を変更する方法の両方を解説します。
閲覧者側からアクセス権をリクエストする手順
スプレッドシートを開くと、画面の上部付近に「閲覧のみ」と表示されているボタンがあります。ここをクリックすると「編集権限をリクエスト」というメニューが出てくるので、それを選択してください。オーナーにリクエストメールが自動で送信され、オーナーが承認すれば編集できるようになります。もしボタンが見当たらない場合は、画面右上の「共有」ボタンから直接リクエストを送ることもできます。
ただし、リクエストを送っても反応が遅い場合は、チャットやメールでオーナーに直接連絡するのが確実です。「システム経由のリクエストメールは埋もれがち」という現実を知っておくと、無駄な待ち時間を減らせます。
オーナー側が権限を「編集者」に変更する手順
オーナーまたは編集者の権限を持っている人がアクセス権を変更する手順はとてもシンプルです。
- スプレッドシートの右上にある青い「共有」ボタンをクリックします。
- 「ユーザーやグループと共有」画面が開いたら、権限を変更したいユーザーの名前の横にあるドロップダウン(「閲覧者」と表示されている部分)をクリックします。
- 「編集者」を選択して「完了」をクリックすれば、即座に権限が反映されます。
まだ共有していない相手に新しく編集権限を付与したい場合は、同じ画面の上部にメールアドレスを入力し、右側のドロップダウンで「編集者」を選んでから「送信」をクリックします。
リンク共有で編集権限を付ける方法
特定のメールアドレスを指定せずに、リンクを知っている人全員に編集権限を付与することもできます。「共有」ボタンをクリックした後、「一般的なアクセス」のセクションで「制限付き」を「リンクを知っている全員」に変更し、その横のドロップダウンを「編集者」に切り替えてください。
ただし、この設定はセキュリティリスクが非常に高いので注意が必要です。URLが外部に漏れると、誰でもデータを書き換えられてしまいます。社内の限定的な用途に留め、機密情報を含むシートでは絶対にこの方法を使わないでください。
権限の種類を正しく理解しよう
スプレッドシートの権限は4段階に分かれています。それぞれの違いを正しく理解しておくと、「なぜ編集できないのか」がすぐにわかるようになります。
| 権限の種類 | できること | できないこと |
|---|---|---|
| オーナー | すべての操作(編集、共有、削除、権限変更) | なし(最高権限) |
| 編集者 | データの編集、コメント追加、他ユーザーとの共有 | ファイルの完全な削除、オーナー権限の変更 |
| 閲覧者(コメント可) | 閲覧とコメントの追加 | データの編集、他ユーザーとの共有 |
| 閲覧者 | 閲覧のみ | 編集、コメント、共有のすべて |
ここで重要なのは、閲覧者であってもコピーやダウンロードはデフォルトで可能という点です。オーナーが共有設定の歯車アイコンから「閲覧者と閲覧者(コメント可)に、ダウンロード、印刷、コピーの項目を表示する」のチェックを外さない限り、閲覧者はファイルをコピーして自分のドライブで自由に編集できます。つまり、「閲覧しかできない」と思っていても、コピーを作れば自分専用の編集可能バージョンが手に入るのです。これは急ぎで作業を進めたいときの裏ワザとして覚えておくと便利です。
特定のシートやセル範囲だけを保護する上級テクニック
チームで一つのスプレッドシートを共有しているとき、「この部分だけは触ってほしくない」という場面はよくあります。そんなときに活躍するのが、シート保護とセル範囲保護の機能です。
特定のシートを保護する方法
保護したいシートのタブを右クリックして「シートを保護」を選択します。すると右側に「保護されているシートと範囲」パネルが表示されるので、「シート」タブが選ばれていることを確認して「権限を設定」をクリックしてください。ここで編集を許可するユーザーを選んで「完了」を押せば、指定したユーザー以外はそのシートを編集できなくなります。
特定のセル範囲だけを保護する方法
保護したいセルの範囲をドラッグで選択し、右クリックメニューから「範囲を保護」を選びます。あとはシート保護と同じ手順で権限を設定するだけです。たとえば、数式が入ったセルだけを保護して入力欄は自由に編集できるようにすれば、計算式が壊れる心配なくチーム作業を進められます。
この機能を使いこなせると、「全員に編集権限を与えつつ、大事な部分だけ守る」という柔軟な運用が可能になります。上級者ほど保護設定を細かく使い分けているので、ぜひマスターしてください。
共有設定のセキュリティを強化するためのベストプラクティス
権限設定ができるようになったら、次に意識したいのがセキュリティです。とくにビジネスで利用する場合は、データの漏洩や不正な編集を防ぐための仕組みを整えておく必要があります。
編集者による権限変更を制限する
デフォルトでは、編集者は他のユーザーに自由に共有権限を付与できます。これは便利な反面、意図しない相手にまでアクセスが広がるリスクがあります。「共有」画面の右上にある歯車アイコンをクリックして、「編集者がアクセス許可を変更して共有できるようにする」のチェックを外しましょう。これだけで、権限の管理をオーナーに集中させることができます。
Googleグループを活用した効率的な権限管理
チームメンバーが多い場合、一人ひとりにメールアドレスを指定して共有するのは手間がかかります。Googleグループを作成してメンバーを登録しておけば、グループのアドレスを入力するだけで全員にまとめて共有できます。人事異動があってもグループ側でメンバーを管理すればよいので、スプレッドシートの共有設定を毎回変更する必要がなくなります。
アクセスに有効期限を設定する
一時的に外部パートナーと共有する場合は、アクセスの有効期限を設定するのがおすすめです。「共有」画面でユーザー名の横にある「有効期限を追加」をクリックすると、最大1年後までの期限を設定できます。期限が切れると自動的にアクセス権が失われるので、共有の消し忘れによる情報漏洩を防げます。
変更履歴を定期的にチェックする
「ファイル」→「変更履歴」→「変更履歴を表示」を選ぶと、誰がいつどんな変更を行ったかを確認できます。万が一、意図しない編集が行われていても、過去のバージョンに戻すことで簡単にリカバリーが可能です。重要なタイミングでは「この版に名前を付ける」機能を使って、たとえば「2026年2月確定版」のように名前を付けておくと後から探しやすくなります。
2026年最新のGemini連携で権限管理がさらに便利に
2026年2月現在、Google WorkspaceにはAIアシスタントGeminiがさらに深く統合されています。スプレッドシートのサイドパネルから「Ask Gemini」ボタンをクリックすると、自然な言葉で指示を出してデータの整理やグラフ作成ができるようになりました。
直接的に権限設定をGeminiが行うわけではありませんが、たとえば「このシートの共有状況を一覧にまとめて」といった依頼をすることで、誰にどの権限を付与しているかの確認作業を効率化できます。また、2026年2月5日に発表された「AI Expanded Access」アドオンでは、Gemini 3 Proを活用した高度な分析機能やNotebookLMの拡張機能が利用可能になっており、スプレッドシートを起点としたデータ活用の幅が一気に広がっています。
さらに、Connected Sheets for BigQuery経由でデータ予測をスプレッドシート上で直接実行できる新機能も追加されました。権限管理とは直接関係ありませんが、チームでデータを共有・編集する場面が増えるほど、権限設定の重要性は高まります。最新機能を活用するためにも、まずは共有と権限の基本をしっかり押さえておきましょう。
「ウェブに公開」と「共有」の違いを知っておこう
Googleスプレッドシートには「共有」とは別に「ウェブに公開」という機能があります。この2つは名前が似ていますが、まったく別の仕組みです。混同すると思わぬトラブルにつながるので、違いをしっかり理解しておきましょう。
「共有」は、特定のユーザーまたはリンクを知っている人にアクセス権を付与する機能です。閲覧・コメント・編集の3段階の権限を設定でき、共有相手はスプレッドシートの画面そのものにアクセスします。
一方、「ウェブに公開」は、スプレッドシートの内容をHTML形式のWebページとして公開する機能です。「ファイル」→「共有」→「ウェブに公開」から設定でき、公開用URLが元のスプレッドシートのURLとは別に発行されます。この公開URLからは元ファイルにたどり着けない仕組みになっているため、オーナーのGoogleアカウント情報を知られたくない場合に有効です。
ただし、ウェブに公開した画面はセルの選択や編集ができないプレビュー形式になります。あくまで「見せるだけ」の用途なので、共同編集が目的なら通常の「共有」機能を使いましょう。
情シス歴10年超の現場視点で語る「本当に効く」トラブルシューティング
ここからは、情報システム部門で10年以上にわたってGoogle Workspaceの運用管理に携わってきた経験をもとに、マニュアルには載っていないリアルな現場知識をお伝えします。公式ヘルプや一般的な解説記事を読んでもピンとこなかった人こそ、ここからが本番です。
「共有したのに見れない」問い合わせの8割はアカウント違い
情シスに届くスプレッドシート関連の問い合わせで、圧倒的に多いのが「ちゃんと共有したはずなのに相手が編集できない」という報告です。そして、そのうち体感で8割は「相手が別のGoogleアカウントでログインしていた」が原因です。特に多いのが、会社のWorkspaceアカウントと個人のGmailアカウントを両方持っている人のケースです。
ここで現場ならではのコツをひとつ。問い合わせを受けたら、まず相手に「今ブラウザの右上に表示されているGoogleアカウントのアイコンをクリックして、メールアドレスを教えてください」と聞いてください。これだけで問題の大半が一瞬で解決します。逆にこれを聞かずに「権限を確認してください」「キャッシュをクリアしてください」と案内すると、相手も自分も無駄な時間を30分以上費やすことになります。
さらに厄介なのが、Chromeで複数のプロファイルを使っている人です。プロファイルごとにログインしているGoogleアカウントが異なるので、「いつもと違うChromeのウィンドウで開いていた」だけで権限エラーになります。この場合はURLをコピーして、正しいプロファイルのウィンドウに貼り付けて開くよう案内してください。
Workspaceの「外部共有制限」で詰むパターンと回避策
企業のGoogle Workspace環境では、管理コンソールで「組織外のユーザーとの共有を禁止」に設定されていることがよくあります。このポリシーが有効だと、社外のGmailアドレスやほかの組織のWorkspaceアカウントとは、どんなに権限を付与しても共有できません。
問題は、共有しようとした側にはエラーメッセージが出るものの、その表示が非常にわかりにくいことです。「このユーザーとの共有は組織のポリシーにより制限されています」のような文言が小さく表示されるだけで、多くの人はそれを読み飛ばして「なぜか共有できない」とパニックになります。
現場で使える回避策としては、以下の3つがあります。まず、IT管理者に頼んで特定のドメインだけ外部共有を許可するホワイトリストを設定してもらう方法。これが最も安全です。次に、どうしても急ぎの場合はスプレッドシートをExcelやPDF形式でダウンロードしてメール添付するという古典的な方法。最後に、Googleフォーム経由でデータ入力してもらい、回答をスプレッドシートに自動集計するという迂回ルートです。3つめの方法はフォームの共有は外部制限の対象外であるケースが多いので、意外と使えます。
「閲覧のみ」バナーが急に出る恐怖のストレージ枯渇問題
現場で最もパニックを引き起こすのが、昨日まで普通に編集できていたファイルが突然「閲覧のみ」になる現象です。原因はほぼ確実にオーナーのGoogleストレージが上限に達したことです。Googleは2023年以降、ストレージポリシーを段階的に厳格化しており、容量超過のアカウントが所有するファイルは読み取り専用になる仕様が強化されています。
ここで情シスとして声を大にして伝えたいのは、「オーナーが退職した後のファイルが最も危険」ということです。退職者のアカウントが停止されると、そのアカウントが所有していたすべてのファイルが閲覧専用になる可能性があります。Workspaceの管理者であれば、退職処理の際に必ずオーナー権限の移管(データ転送)を実施してください。管理コンソールの「ユーザー」→該当ユーザー→「データの転送」から、別のユーザーにファイルのオーナー権限を一括で移管できます。
個人のGoogleアカウントの場合は、Googleドライブの容量を確認して不要なファイルを削除するか、Google Oneのストレージプランを購入してもらうしかありません。Gmailのゴミ箱や迷惑メールフォルダにある大量のメールも容量を圧迫しているケースが多いので、そこも確認するよう案内しましょう。
GASで権限管理を自動化する実用スクリプト集
Google Apps Script(GAS)を活用すると、手作業では面倒な権限管理を自動化できます。ここでは、実務で本当に役立つスクリプトを複数紹介します。GASは、スプレッドシートの「拡張機能」→「Apps Script」から開けるエディタに貼り付けて実行するだけで使えます。プログラミング初心者でもコピー&ペーストで動かせるように設計しているので、安心して試してみてください。
スクリプト1スプレッドシートの共有状況を一覧で取得する
「このファイル、今誰に共有されてるんだっけ?」を一瞬で確認できるスクリプトです。実行すると、現在のスプレッドシートにアクセスできるすべてのユーザーのメールアドレスと権限レベルをログに出力します。
function listAllPermissions() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var file = DriveApp.getFileById(ss.getId());
var editors = file.getEditors();
var viewers = file.getViewers();
var owner = file.getOwner();
Logger.log('=== 共有状況レポート ===');
Logger.log('ファイル名: ' + ss.getName());
Logger.log('オーナー: ' + owner.getEmail());
Logger.log(' 編集者 ');
editors.forEach(function(user) {
Logger.log(' ' + user.getEmail());
});
Logger.log(' 閲覧者 ');
viewers.forEach(function(user) {
Logger.log(' ' + user.getEmail());
});
Logger.log('=== レポート終了 ===');
}
実行後、「表示」→「ログ」(または
Ctrl+Enter
で実行ログ)を開くと結果が表示されます。定期的にチェックすることで、不要なユーザーへの共有が放置されていないかを監視できます。
スクリプト2指定日数後にリンク共有を自動で無効化する
「一時的にリンク共有をオンにしたけど、戻し忘れた」というのは情シスにとって悪夢です。このスクリプトを使えば、指定した日数が経過したら自動でリンク共有を「制限付き」に戻せます。
function scheduleLinkExpiry() {
// 3日後にリンク共有を無効化する
var daysUntilExpiry = 3;
var expireDate = new Date();
expireDate.setDate(expireDate.getDate() + daysUntilExpiry);
ScriptApp.newTrigger('disableLinkSharing')
.timeBased()
.at(expireDate)
.create();
Logger.log(daysUntilExpiry + '日後にリンク共有を自動無効化します: ' + expireDate);
}
function disableLinkSharing() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var file = DriveApp.getFileById(ss.getId());
file.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.NONE);
file.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.NONE);
Logger.log('リンク共有を無効化しました: ' + ss.getName());
// 実行済みトリガーを削除
var triggers = ScriptApp.getProjectTriggers();
triggers.forEach(function(trigger) {
if (trigger.getHandlerFunction() === 'disableLinkSharing') {
ScriptApp.deleteTrigger(trigger);
}
});
}
使い方は、まずリンク共有を手動でオンにした後、
scheduleLinkExpiry
関数を実行するだけです。
daysUntilExpiry
の数値を変更すれば、有効期間を自由に調整できます。外部への一時的な情報共有が多い部署では、このスクリプトだけでセキュリティインシデントを大幅に減らせます。
スクリプト3特定のユーザーの権限を一括で「閲覧者」に降格する
プロジェクト終了後に「編集者」権限をまとめて「閲覧者」に変更したい場面は頻繁にあります。しかしGUIで一人ずつ変更するのは非常に手間です。このスクリプトを使えば、オーナー以外のすべての編集者を一括で閲覧者に降格できます。
function downgradeAllEditorsToViewers() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var file = DriveApp.getFileById(ss.getId());
var editors = file.getEditors();
var owner = file.getOwner().getEmail();
var count = 0;
editors.forEach(function(editor) {
var email = editor.getEmail();
if (email !== owner && email !== '') {
file.removeEditor(email);
file.addViewer(email);
Logger.log('降格完了: ' + email);
count++;
}
});
Logger.log('合計 ' + count + ' 名の編集者を閲覧者に変更しました。');
}
実行する前に必ず
listAllPermissions
(スクリプト1)で現在の共有状況を確認してください。間違って降格すると業務に支障が出るので、実行前のバックアップ確認は必須です。なお、このスクリプトはオーナー自身には影響しないよう設計しています。
スクリプト4共有状況をスプレッドシートに自動記録する監査ログ
セキュリティ監査や内部統制の観点から、「いつ・誰に・どの権限で共有したか」の記録を残したいケースがあります。以下のスクリプトは、共有状況を新しいシートに自動で書き出します。
function auditSharingPermissions() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var file = DriveApp.getFileById(ss.getId());
var sheetName = '共有監査ログ';
// 監査ログ用シートを取得または作成
var logSheet = ss.getSheetByName(sheetName);
if (!logSheet) {
logSheet = ss.insertSheet(sheetName);
logSheet.appendRow);
logSheet.getRange(1, 1, 1, 5).setFontWeight('bold');
}
var now = new Date();
var fileName = ss.getName();
var owner = file.getOwner();
// オーナーを記録
logSheet.appendRow);
// 編集者を記録
file.getEditors().forEach(function(user) {
logSheet.appendRow);
});
// 閲覧者を記録
file.getViewers().forEach(function(user) {
logSheet.appendRow);
});
Logger.log('監査ログを記録しました。「' + sheetName + '」シートを確認してください。');
}
このスクリプトをトリガーで週1回自動実行するように設定しておけば、共有状況の変遷を時系列で追跡できます。トリガーの設定は、Apps Scriptエディタの左メニューにある時計アイコン(トリガー)から「トリガーを追加」で行えます。実行間隔を「毎週」にすれば自動化完了です。ISMSやPマーク取得企業で特に重宝される仕組みです。
スクリプト5編集があったらオーナーにSlack通知を飛ばす
重要なスプレッドシートが編集されたときに、すぐ気づけるようにしたいケースです。以下のスクリプトはSlackのWebhook URLを使って、編集が発生するたびにSlackチャンネルに通知を送ります。
function notifyOnEdit(e) {
var slackWebhookUrl = 'https://hooks.slack.com/services/XXXXX/XXXXX/XXXXX'; // ここにWebhook URLを入力
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = e.source.getActiveSheet();
var range = e.range;
var user = Session.getActiveUser().getEmail() || '不明なユーザー';
var message = {
text: ':pencil2: *スプレッドシートが編集されました*\n' +
'`ファイル:` ' + ss.getName() + '\n' +
'`シート:` ' + sheet.getName() + '\n' +
'`セル:` ' + range.getA1Notation() + '\n' +
'`編集者:` ' + user + '\n' +
'`日時:` ' + new Date().toLocaleString('ja-JP')
};
var options = {
method: 'post',
contentType: 'application/json',
payload: JSON.stringify(message)
};
UrlFetchApp.fetch(slackWebhookUrl, options);
}
このスクリプトは、Apps Scriptのトリガー設定で「編集時」のイベントトリガーとして
notifyOnEdit
を登録して使います。
slackWebhookUrl
の部分は、Slackの「Incoming Webhooks」アプリから取得したURLに置き換えてください。Slackを使っていない場合は、
UrlFetchApp.fetch
の部分を
MailApp.sendEmail
に差し替えればメール通知にもできます。
現場でよく遭遇するけど解決策がわかりにくい問題と対処法
ここからは、マニュアルや公式ヘルプにはほとんど載っていないけれど、実際の業務では頻繁に起こる「あるある問題」を取り上げます。すべて現場で実際に解決してきた経験に基づいています。
問題1編集者なのに特定のセルだけ編集できない
「共有画面では編集者になっているのに、一部のセルを書き換えようとすると弾かれる」という問い合わせが来たら、シート保護またはセル範囲保護が原因です。厄介なのは、保護されているセルが見た目ではわからないことが多い点です。
確認方法は、メニューの「データ」→「シートと範囲を保護」を開くことです。右側にパネルが表示され、現在設定されているすべての保護範囲が一覧で出てきます。ここに心当たりのない保護が大量に設定されている場合は、前任者やテンプレート作成者が設定したまま放置されている可能性が高いです。
対処のコツとしては、保護範囲を削除する前に必ずスクリーンショットを撮っておくことをおすすめします。「なぜこの範囲が保護されていたのか」が後から問題になるケースがあるからです。保護を解除するには、パネル内で該当の保護をクリックし、ゴミ箱アイコンで削除します。
問題2「提案モード」になっていて直接編集できない
意外と気づきにくいのが、編集モードが「提案」に切り替わっているパターンです。Googleスプレッドシートには「編集」「提案」「閲覧」の3つのモードがありますが、画面右上のペンアイコンの横にある小さなドロップダウンでモードが切り替わります。「提案」モードだと、入力しても直接反映されず、変更がコメントのような形で提案として記録されます。
見分け方は簡単で、編集した内容が緑色の取り消し線付きテキストや色付きの挿入マークで表示されたら提案モードです。右上のモード切替で「編集」に戻せば通常通り直接編集できます。ただし、オーナーが意図的に「編集者には提案モードのみ許可」と設定している場合は、編集モードに切り替えられないことがあります。
問題3コピーしたスプレッドシートに元の権限がそのまま残っている
「ファイル」→「コピーを作成」でスプレッドシートを複製した場合、コピー先のファイルには元の共有設定は引き継がれません。コピーを作成した人が新しいオーナーになり、共有はリセットされます。これ自体は安全な仕様ですが、逆に「コピーしたら共有が消えてチームメンバーがアクセスできなくなった」という問題が発生することがあります。
コピーを作成する際には、必要に応じて「同じユーザーと共有する」オプションにチェックを入れてください。ただし、このオプションは元のファイルに対して編集者以上の権限を持っている場合にのみ表示されます。閲覧者がコピーを作成した場合は、共有設定を自分で一から設定し直す必要があります。
問題4スマートフォンアプリで「閲覧のみ」と表示されて編集できない
PC版では問題なく編集できるのに、スマートフォンのGoogleスプレッドシートアプリでは「閲覧のみ」と表示されるケースがあります。これはアプリにログインしているGoogleアカウントがPC版と異なっている可能性が高いです。
スマートフォンのGoogleスプレッドシートアプリでは、端末に登録されているGoogleアカウントの中から使用するアカウントを選択します。アプリの左上にあるメニューアイコンをタップし、上部に表示されているアカウント情報を確認してください。複数アカウントが登録されている場合は、権限が付与されているアカウントに切り替えてから再度ファイルを開いてみましょう。
もうひとつの原因として、スマートフォンのアプリバージョンが古い場合も挙動が不安定になります。Google PlayまたはApp Storeで最新バージョンにアップデートしてから再度試してください。
問題5共有ドライブ内のファイルで権限の仕組みが違う
Google Workspaceの共有ドライブ(旧チームドライブ)に保存されたスプレッドシートは、個人のマイドライブに保存されたファイルとは権限の仕組みが根本的に異なります。共有ドライブでは、ファイル個別の権限よりもドライブ自体のメンバーシップが優先されます。
つまり、共有ドライブの「閲覧者」メンバーは、そのドライブ内のすべてのファイルに対して閲覧権限しか持てません。特定のファイルだけ編集権限を付与しても、ドライブレベルの権限で上書きされてしまうケースがあります。この場合は、共有ドライブのメンバー権限を「編集者」に昇格するか、ファイルをマイドライブにコピーしてから個別に共有する方法を取ってください。
共有ドライブのメンバー管理は管理コンソールまたはドライブの設定画面から行いますが、操作できるのは「管理者」または「コンテンツ管理者」の権限を持つメンバーだけです。自分の権限レベルが不明な場合は、共有ドライブの管理者に確認を依頼しましょう。
情シスが教える「やっておくと後で絶対助かる」事前対策
問題が起きてから慌てるのではなく、事前に仕組みを整えておくことが何よりも重要です。ここでは、大きなトラブルを未然に防ぐための実践的な予防策を紹介します。
共有テンプレートのルールを社内で統一する
「誰がどのタイミングで共有設定を変えるか」のルールが曖昧だと、権限の衝突や設定ミスが頻発します。たとえば、プロジェクト用のスプレッドシートを新規作成する際は、以下のような共有ルールをチーム内で事前に決めておきましょう。「プロジェクトメンバーには編集権限、上長には閲覧(コメント可)権限、外部パートナーにはリンク共有で閲覧のみ、プロジェクト終了後はオーナーがリンク共有を無効化し、外部メンバーの権限を削除する」。このルールをGoogleドキュメントにまとめて、全社の共有ドライブに置いておくだけで、問い合わせ件数が目に見えて減ります。
重要ファイルのオーナーを「個人アカウント」にしない
業務で使う重要なスプレッドシートのオーナーが個人のGmailアカウントになっていると、その人が退職した瞬間にファイルの管理が不可能になります。必ず組織のWorkspaceアカウント、もしくは部署の代表アカウントをオーナーにしてください。Google Workspaceの管理者であれば、管理コンソールからオーナーの移管が可能ですが、個人のGmailアカウントがオーナーのファイルは管理者でも介入できません。これは取り返しのつかない問題に発展するので、今すぐ確認してください。
GASのトリガーで「共有設定の棚卸し」を自動化する
先ほど紹介したスクリプト4(監査ログ)を、毎月1日に自動実行するトリガーとして設定しておくと、共有状況の定点観測が自動化されます。半年もすれば、「いつの間にか見知らぬ外部アカウントが編集者として追加されていた」といった異常を過去ログから追跡できるようになります。セキュリティ監査のエビデンスとしてもそのまま使えるので、一石二鳥です。
「コピー・ダウンロード禁止」設定の限界を理解する
機密情報を含むスプレッドシートを共有する際に、共有設定の歯車アイコンから「閲覧者と閲覧者(コメント可)に、ダウンロード、印刷、コピーの項目を表示する」のチェックを外す人は多いと思います。しかし、これには重大な限界があることを知っておいてください。
まず、この設定はGUIのメニューを非表示にするだけであって、技術的にデータの取得を完全にブロックしているわけではありません。画面のスクリーンショットは当然撮れますし、ブラウザの開発者ツールからHTMLソースを見ればデータは読み取れます。さらに、Google Apps Scriptを使えばAPIレベルでデータにアクセスできてしまいます。
つまり、この設定は「うっかりコピーやダウンロードの防止」としては有効ですが、悪意を持った情報持ち出しを完全に防ぐことは不可能です。本当に機密性が高いデータについては、Google Workspace EnterpriseプランのDLP(データ損失防止)機能やGoogle Vault、あるいはそもそもスプレッドシートではなく専用のセキュアなシステムでの管理を検討してください。
ぶっちゃけこうした方がいい!
ここまで原因分析から対処法、GASスクリプト、セキュリティ対策まで一通り解説してきましたが、最後に情シス歴10年以上の経験からぶっちゃけた話をします。
正直なところ、スプレッドシートで共有後に閲覧しかできない問題って、ほとんどの場合「共有する側がデフォルト設定のまま送っている」だけなんですよね。Googleスプレッドシートのリンク共有は、デフォルトが「閲覧者」です。これはセキュリティ上は正しい設計なんですが、共有する側の人間がこの仕様を知らないまま「リンク送ったよ!」って言ってるケースが本当に多い。だから、共有する側が「相手に何をしてもらいたいか」を考えてから権限を設定する。これだけ意識すれば、この手のトラブルは9割なくなります。
もうひとつ、個人的にはこうした方がぶっちゃけ楽だし効率的だと思うのは、「迷ったらGoogleグループ+共有ドライブで管理する」という運用です。個々のファイルに対して一人ずつ権限を設定するのは管理コストが高すぎます。プロジェクトやチームごとにGoogleグループを作り、共有ドライブにファイルをまとめて、グループ単位で権限を管理する。こうすれば、新メンバーの追加はグループに入れるだけ、卒業したメンバーはグループから外すだけ。ファイル側の共有設定をいちいち触る必要がなくなります。
あと、これは声を大にして言いたいんですが、GASのスクリプトは「使えたら便利」じゃなくて「知っておくべき必須スキル」です。今回紹介した5つのスクリプトは全部コピペで動くものばかりですが、これらを使うか使わないかで、権限管理にかかる工数が文字通り10分の1になります。特に監査ログと自動期限切れの仕組みは、手動でやったら毎月何時間もかかる作業です。GASは難しそうに見えますが、最初の一歩を踏み出してしまえば意外とどうにかなります。
結局のところ、スプレッドシートの権限問題は「知っていれば一瞬で解決するけど、知らないと永遠にハマる」類のものです。この記事で紹介した内容を頭の片隅に入れておくだけで、チーム全体の生産性が確実に上がります。とりあえず今日やってほしいのは、自分がオーナーの重要ファイルの共有設定を一回確認すること。それだけで、明日起きるかもしれないトラブルをひとつ確実に防げます。
スプレッドシートで共有後に閲覧しかできないに関するよくある質問
共有されたスプレッドシートをどうしても編集したい場合はどうすればよい?
もっとも確実なのは、オーナーに連絡して編集権限を付与してもらうことです。ただし、すぐに連絡が取れない場合は、「ファイル」→「コピーを作成」で自分のGoogleドライブにコピーを作れば、そのコピーは自由に編集できます。元のファイルには反映されませんが、急ぎのデータ確認や分析作業には十分使えます。もうひとつの方法として、「ファイル」→「ダウンロード」からExcel形式やCSV形式でダウンロードし、ローカルで編集する手もあります。
自分がオーナーなのに閲覧専用になってしまったのはなぜ?
この現象は主に2つの原因で起こります。ひとつはGoogleドライブのストレージ容量が上限に達しているケースです。無料プランの15GBを超えると、オーナーであっても新規の編集ができなくなります。不要なファイルを削除するか、ストレージプランをアップグレードしてください。もうひとつはブラウザの不具合です。キャッシュをクリアするか、シークレットモードで開き直してみましょう。
「編集者」で共有したのに相手が編集できないと言われた場合は?
まず、相手がアクセスしているGoogleアカウントが正しいか確認してもらいましょう。複数アカウントを持っている人は、権限が付与されていないアカウントでログインしている可能性が高いです。それでも解決しない場合は、相手にシークレットモードで開いてもらい、ブラウザの拡張機能が干渉していないかチェックしてください。また、組織のWorkspaceポリシーで外部共有が制限されているケースもあるので、IT管理者への確認も忘れずに行いましょう。
スマートフォンからでも権限の変更はできる?
はい、Googleスプレッドシートのモバイルアプリからも権限の変更は可能です。アプリでスプレッドシートを開いたら、右上の三点メニュー(または共有アイコン)をタップして「共有とエクスポート」を選択します。そこからPC版と同様に、ユーザーの追加や権限レベルの変更が行えます。ただし、画面が小さいため操作ミスが起きやすいので、重要な設定変更はできるだけPCから行うことをおすすめします。
今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失や重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
ぜひ、あなたの悩みを私に解決させてください。
まとめ
スプレッドシートで共有後に閲覧しかできない問題は、ほとんどの場合「権限が閲覧者のままになっている」「別のGoogleアカウントでログインしている」「シートが保護されている」のいずれかが原因です。まずはこの3つを確認するだけで、大半のケースは解決します。
それでもうまくいかないときは、ブラウザのキャッシュクリアやシークレットモードでの確認、ストレージ容量のチェック、組織のポリシー確認と、順番に切り分けていきましょう。権限の種類(オーナー・編集者・閲覧者コメント可・閲覧者)の違いを正しく理解しておけば、共有時のトラブルを事前に防ぐこともできます。
2026年のGoogle Workspaceは、GeminiのAI統合によってスプレッドシートの活用範囲がさらに広がっています。チームでデータを共有・編集する機会が増えるからこそ、権限設定の基本をしっかりマスターして、安全で効率的なコラボレーション環境を整えていきましょう。今日学んだ内容をさっそく自分のスプレッドシートで試してみてください。きっと、共有作業がもっとスムーズになるはずです。






コメント