コンテンツへスキップ
超解決
  • トップページ
  • 詐欺メールチェッカー
  • テキスト整形ツール
  • 高機能・文字数カウント(自動保存付き)
  • パスワード生成ツール
  • 全記事一覧(サイトマップ)
  1. ホーム
  2. Google Drive
  3. 【Googleドキュメント】自動生成した文書の共有権限が付かない時のスクリプト修正

【Googleドキュメント】自動生成した文書の共有権限が付かない時のスクリプト修正

2026年6月5日2026年6月22日
Google Drive Office・仕事術 Googleスプレッドシート Googleドキュメント 会社アカウント・認証
【Googleドキュメント】自動生成した文書の共有権限が付かない時のスクリプト修正
🛡️ 超解決

Google Apps Script(GAS)で自動生成したGoogleドキュメントに対し、特定のユーザーやグループへの共有権限を付与しようとした際、権限が反映されない現象が発生することがあります。スクリプト自体はエラーなく終了しているのに、共有設定が有効にならないケースが多く、原因の特定に時間がかかる場合があります。本記事では、この問題の原因をコードレベルで切り分け、修正手順を具体的に解説します。特に、会社の管理下にあるアカウントで運用する場合の注意点についても触れます。

【要点】この記事で確認すること

  • 最初に見る場所: スクリプトエディタの「リソース」→「高度なGoogleサービス」、またはOAuth同意画面のスコープ設定を確認してください。
  • 切り分けの軸: コード上の権限付与方法(DriveApp vs Advanced Drive Service)、スクリプトの実行モード、スコープの有無の3軸で切り分けます。
  • 注意点: 会社PCではIT管理者によるOAuthスコープのホワイトリスト制限がかかっている可能性があるため、勝手に承認画面を変更せず管理者へ相談してください。

ADVERTISEMENT

目次

  • 1 1. 共有権限が付かない原因を特定する
    • 1.1 1.1 コード上の問題:DriveApp.addEditor()の制限
    • 1.2 1.2 高度なGoogleサービス(Advanced Drive Service)の未有効化
    • 1.3 1.3 OAuthスコープの不足
  • 2 2. スクリプトの修正ポイント
    • 2.1 2.1 DriveApp.addEditor()からDrive APIへの切り替え
    • 2.2 2.2 スコープの明示的な指定
    • 2.3 2.3 実行モードの確認
  • 3 3. 具体的な修正手順
  • 4 4. 失敗パターンと対処法
    • 4.1 4.1 「Drive is not defined」エラー
    • 4.2 4.2 権限は付与されたが表示されない
    • 4.3 4.3 会社アカウントで認証が通らない
  • 5 5. 管理者に確認すべき設定
  • 6 6. よくある質問
  • 7 7. まとめ
    • 7.1 解決 関連記事でさらに詳しく
    • 7.2 Google Driveの人気記事ランキング

1. 共有権限が付かない原因を特定する

自動生成したドキュメントの共有権限が付かない原因は、大きく分けて「スクリプトのコード」「APIの有効化」「OAuthスコープ」「実行環境の制限」の4つに分類できます。それぞれの原因を順に確認することで、問題の切り分けが可能です。

1.1 コード上の問題:DriveApp.addEditor()の制限

もっとも多いのが、DriveApp.addEditor()を使用しているケースです。DriveApp.addEditor()は、スクリプト実行ユーザーがドキュメントのオーナーである場合にのみ機能します。スクリプトがサービスアカウントや別のユーザー権限で実行されていると、権限付与がスキップされたりエラーになったりします。また、DriveApp.addEditor()はドキュメントの共有設定を変更するための適切なスコープ(https://www.googleapis.com/auth/drive.file)を必要とします。

1.2 高度なGoogleサービス(Advanced Drive Service)の未有効化

より細かい権限制御が必要な場合は、高度なGoogleサービスであるDrive API(v2またはv3)を有効にして、Drive.Permissions.insert()やDrive.Permissions.create()を使用します。ただし、このサービスをスクリプトエディタで明示的に有効化していないと、スクリプト実行時に「ReferenceError: Drive is not defined」が発生します。権限が付かない現象の裏で、このエラーがキャッチされずに無視されているケースもあります。

1.3 OAuthスコープの不足

スクリプトに必要なスコープが設定されていない場合、権限付与が拒否されます。特に、会社のGoogle Workspaceアカウントでは、管理者がOAuthスコープを制限していることがあります。例えば、「drive.file」スコープだけでは、他のユーザーに権限を付与する操作が許可されない場合があります。実際には「drive」スコープ(広範なアクセス)が必要なケースもあります。

権限付与方法 必要なスコープ オーナー制限 推奨用途
DriveApp.addEditor() drive.file あり(実行ユーザーがオーナー) 単純な権限追加
Drive.Permissions.insert() drive (full) または drive.file + manage permissions なし(オーナー権限不要) 複雑な権限設定
※ お探しの解決策が見つからない場合は、こちらの「会社アカウント・認証トラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

2. スクリプトの修正ポイント

原因を特定したら、コードを修正します。ここでは、代表的な修正方法を3つ紹介します。

2.1 DriveApp.addEditor()からDrive APIへの切り替え

DriveApp.addEditor()で権限が付かない場合、高度なGoogleサービスであるDrive APIを使用します。まず、スクリプトエディタの「リソース」→「高度なGoogleサービス」で「Drive API」を「オン」にします。次に、以下のようなコードで権限を追加します。

例:
var fileId = 'xxxxxxxx';
var resource = {
'type': 'user',
'role': 'writer',
'emailAddress': 'user@example.com'
};
Drive.Permissions.insert(resource, fileId);

2.2 スコープの明示的な指定

OAuthスコープが不足している場合は、スクリプトのマニフェストファイル(appsscript.json)にスコープを追加します。または、スクリプトエディタの「プロジェクトの設定」からスコープを確認し、必要に応じて再承認を促します。会社のアカウントでは、管理者が承認したスコープしか使えないため、管理者に追加を依頼してください。

2.3 実行モードの確認

スクリプトがトリガーやウェブアプリとして実行される場合、実行ユーザーがドキュメントのオーナーとは限りません。特に、時間主導型トリガーではトリガー作成者の権限で実行されます。そのため、ドキュメントのオーナーが実行ユーザーとは異なる場合、権限が付与されないことがあります。この問題を回避するには、サービスアカウントを使用するか、ドキュメントのオーナー権限をスクリプト実行ユーザーに委譲する必要があります。

3. 具体的な修正手順

ここでは、DriveApp.addEditor()からDrive APIに切り替える具体的な手順を説明します。以下の順序で進めてください。

  1. スクリプトエディタを開き、メニューから「リソース」→「高度なGoogleサービス」をクリックします。
  2. 表示された一覧から「Drive API」のスイッチを「オン」にし、下の「Google Cloud Platform(GCP)プロジェクト」のダイアログで「Drive API」を有効化します(まだの場合はリンクからAPIライブラリで有効化)。
  3. スクリプトにDrive APIを使用するためのコードを追加します。既存のDriveApp.addEditor()をコメントアウトし、代わりにDrive.Permissions.insert()を使用します。
  4. スクリプトのマニフェストファイル(appsscript.json)を開き、必要なOAuthスコープを追加します。例:”oauthScopes”: [“https://www.googleapis.com/auth/drive”]
  5. 変更を保存し、スクリプトを再実行します。初回実行時には認証ダイアログが表示されるので、必要な権限を承認します。
  6. 生成されたドキュメントの共有設定を確認し、権限が正しく付与されているか検証します。

手順4で追加するスコープは、会社のポリシーによっては承認されない場合があります。その場合は管理者に連絡し、プロジェクトのOAuth同意画面にスコープを追加してもらう必要があります。

4. 失敗パターンと対処法

実際によく発生する失敗パターンを3つ紹介します。

4.1 「Drive is not defined」エラー

高度なGoogleサービスを有効にしていない場合に発生します。対処法は、上記手順1〜2でDrive APIを有効にすることです。ただし、GCPプロジェクトが正しくリンクされていないと、有効化してもエラーが続くことがあります。その場合は、GCPコンソールでプロジェクトを確認し、Drive APIが有効になっているか直接チェックしてください。

4.2 権限は付与されたが表示されない

スクリプトが正常終了しても、ドキュメントの共有設定にユーザーが追加されていないように見える場合があります。これは、スクリプトが異なるファイル(コピーやテンプレート)に対して権限を設定している可能性が高いです。生成されたドキュメントのIDをログ出力して、正しいファイルを操作しているか確認してください。

4.3 会社アカウントで認証が通らない

会社のGoogle Workspaceアカウントでは、管理者がOAuthスコープのホワイトリストを設定しているため、承認画面で「このアプリはブロックされました」と表示されることがあります。この場合、管理者にスクリプトのスコープ(特にdriveスコープ)を承認してもらう必要があります。また、内部アプリとしてGoogle Workspace Marketplaceに公開する方法もあります。

5. 管理者に確認すべき設定

会社のGoogle Workspace環境でスクリプトを動作させる場合、以下の設定を管理者に確認してください。

  • OAuthスコープの制限: 管理者コンソールの「APIとサービス」→「OAuth同意画面」で、利用可能なスコープが制限されていないか確認します。必要に応じて、driveスコープを追加してもらいます。
  • APIの有効化: GCPプロジェクトでDrive APIが有効になっているか確認します。管理者がAPIの利用制限をかけている場合があります。
  • サービスアカウントの利用: スクリプトをサービスアカウントで実行する場合、そのサービスアカウントにドメイン全体の権限委譲が必要なことがあります。管理者に依頼して設定してもらいます。

6. よくある質問

Q1. DriveApp.addEditor()でエラーは出ないのに権限が付かないのはなぜですか?
A. スクリプト実行ユーザーがドキュメントのオーナーでない場合、addEditor()は何もせずに終了することがあります。エラーを起こさないため気づきにくいですが、オーナー権限を確認してください。

Q2. Drive.Permissions.insert()を使用しても権限が付かない場合は?
A. スコープが不足している可能性が高いです。スクリプトの実行ログでGoogle APIsコンソールのエラーを確認するか、マニフェストファイルにdriveスコープを追加してみてください。

Q3. サービスの有効化は全てのユーザーに影響しますか?
A. 高度なGoogleサービスの有効化はスクリプトプロジェクト単位です。ただし、GCPプロジェクトのAPI有効化はプロジェクト全体に影響するため、他のスクリプトに影響を与える可能性があります。管理者と相談の上で行ってください。

7. まとめ

自動生成したGoogleドキュメントの共有権限が付かない場合、まずはスクリプトの権限付与方法とOAuthスコープを確認してください。DriveApp.addEditor()はシンプルですがオーナー制限があるため、高度なGoogleサービスのDrive APIを使う方が安定します。会社のアカウントでは管理者による制限が影響することが多いため、早めに管理者へ相談することをおすすめします。スクリプトの実行ユーザーとドキュメントのオーナーが一致しているかも重要なチェックポイントです。


📄
Googleドキュメントトラブル完全解決データベースこの記事以外にも、書式・共有・Apps Script・引用など様々な困りごとへの解決策をまとめています。逆引きに活用してください。
🔐
会社アカウント・認証トラブル完全解決データベース 職場または学校アカウント、MFA、Authenticator、VPN、権限、会社ポリシーで止まる問題を横断的に確認できます。
この記事の監修者
✍️

超解決 第一編集部

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

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

  • 💡【Microsoft 365】ユーザー同意を禁止した後にアプリ連携できない時の申請手順
  • ⚡【Box】Box ToolsのOffice編集で権限が足りないと出る時の共有設定と所有者確認
  • 💡【Googleドキュメント】Claude APIで長文要約!長文耐性のあるAI連携
  • 🛠️【Googleアカウント】GoogleアカウントでGoogleグループ所属が反映されない時の確認方法
  • 💡【Windows】カメラアプリでは映るのにブラウザ会議で使えない場合のサイト権限
  • ✅【Googleドキュメント】属人化した手順書を共有文書へ移す時の進め方

Google Driveの人気記事ランキング

  • 【PDF】スマホからPCへPDFをケーブル無しで送る!クラウド(Googleドライブ/iCloud)同期の基本
  • 【SharePoint】SharePointで「同期」ボタンが表示されない時の確認手順
  • 【Gmail】送信済みにはあるのに相手へ届いていないと言われた場合の切り分け
  • 【Google Drive】ウイルススキャンできない警告が出る場合の確認手順
  • 【Googleアカウント】Googleアカウントで認証アプリを複数端末に移す時の注意
  • 【Googleスプレッドシート】Apps Scriptが動かない・実行されない時のチェックポイント
  • 【Googleアカウント】会社アカウントと個人アカウントを分けたい時の運用方法
  • 【Googleスプレッドシート】テンプレートギャラリーを使い倒すコツ!業務別の活用例
  • 【Google Drive】リンクを開くと別アカウントでログインを求められる時に見るべき設定
  • 【Googleドキュメント】Google Classroomで配布した文書が編集できない時のコピー設定
Google Drive Office・仕事術 Googleスプレッドシート Googleドキュメント 会社アカウント・認証
Apps Script・自動化 Google Drive Google Drive Gmail・Docs連携 Google Drive 共有・権限 google-docs Googleスプレッドシート 会社アカウント・認証 共有・コラボレーション 権限・アクセス許可
  • 【Googleドキュメント】テンプレート文書の入力欄を分かりやすくするプレースホルダー設計
  • 【Googleドキュメント】Apps Scriptで文書IDが見つからない時のURL確認
⚠️
【最新】通信・アプリ障害まとめ 更新中 リアルタイムで発生中の障害を即チェック
🔴 速報・最新トラブル
  • 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.17 【速報 2026年7月17日】GitHub REST APIの障害は復旧|影響と失敗処理の確認点
  • 07.17 【2026年7月16日】クレジットカード決済ができない障害|CARDNETの回復状況と確認手順
  • 07.16 【2026年7月16日】AWSで広範囲の障害|EC2・S3・DynamoDBなどの影響と確認方法
  • 07.16 【2026年7月最新】ニチレイのシステム障害|サイバー攻撃の影響・復旧状況・確認先
  • 07.16 【速報 2026年7月】GitHub Webhookが届かない・履歴にない時の公式障害と確認手順
  • 07.15 【速報 2026年7月】ChatGPT GoでGPT-5.5の会話が失敗する時の公式状況と確認手順
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
🔐🧠📦

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

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

© 超解決.