レコプラ

AI・副業に役立つ有益ブログ

GASデプロイが反映されない原因3つ|URLを変えず直す手順

25 views
約24分

当サイトはアフィリエイト広告を利用しています

GASデプロイが反映されない原因3つ|URLを変えず直す手順

※当サイトにはアフィリエイト広告が含まれます。本記事の本文にアフィリエイトリンクはありませんが、筆者自身の在庫管理キットの案内を2か所含みます。記事の前後には、サイト共通の広告が表示されます。

結論。GASのWebアプリが反映されない原因は、エディタに貼っていない、新しいバージョンを出していない、別のスプレッドシートを見ている、の3つに分かれます。2つ目は、デプロイを管理から新バージョンを選べばURLを変えずに直せます。3つ目は新バージョンを出しても直らないので、コードが開くファイルのIDを確かめてください。

GAS(Google Apps Script)のコードを直したのに、Webアプリの画面が何も変わらない。GASデプロイが反映されない場面は、慣れた人でも踏みます。Qiitaにも、同じ悩みを書いた投稿がありました。

GoogleAppsScriptでプログラムを書いて一度公開したあと、 プログラムを修正をしたときに、修正内容が反映されなくてちょっと困ったのでメモ。

出典 Qiita(YutakaArai)の投稿

多くの解説は、新しいバージョンを出す手順で終わります。私が取引先の業務アプリで踏んだのは、その手順を済ませても直らない3つ目の原因でした。上から順に見れば、どこで止まっているかは必ず絞れます。

この記事で分かること
  • ✓GASデプロイが反映されない原因を3か所で切り分ける方法
  • ✓URLを変えずに新バージョンを反映する5つの操作
  • ✓テスト用の/devと公開用の/execの違い
  • ✓新バージョンを出しても直らなかった、スプレッドシートIDの食い違いの実例
  • ✓AIに直させたコードを本番に入れる前の確かめ方

GASデプロイが反映されないときに最初に見る3か所は?

最初に見るのは、エディタの中身、デプロイのバージョン、コードが開くスプレッドシートのIDの3か所です。この順番で見ると、手戻りがいちばん少なくなります。上の層が崩れていると、下の層を直しても画面は変わりません。

3つの層は上から順に確かめる

GASデプロイが反映されない原因の3層。1層目エディタ、2層目バージョン、3層目スプレッドシートIDと、それぞれの見分け方を並べた図

1層目は、直したコードがGASのエディタに入り、保存されているかです。2層目は、公開中のデプロイが新しいバージョンを指しているかになります。3層目は、コードが読み書きするスプレッドシートが、利用者の使っているファイルと同じかです。

反映されないときに見る順番

  1. エディタに直したコードが入っていて、保存済みか
  2. 公開中のデプロイが、新しいバージョンを指しているか
  3. コードが開くスプレッドシートのIDが、使われているファイルと同じか

/devで開くと、どの層で止まっているか分かる

切り分けの近道は、テスト用のURLで開くことです。URLの末尾が/devのものは、保存済みの最新コードで動きます。/devで直っていて/execで直らないなら2層目です。/devでも直らないなら、1層目か3層目に絞れます。

私の現場でも起きた 取引先の業務アプリを手貼りで保守している

私は取引先の業務アプリを、Claude Codeで保守しています。GASのWebアプリで、ファイルはコード.gsとIndex.html、通知用の.gsの3つです。この記事の実例は、すべてこのアプリと社内のスプレッドシートで起きたことです。

claspを使わず、エディタへ手で貼っている

コードはローカルでClaude Codeに直させ、GASのエディタへ手で貼っています。claspという同期ツールは使っていません。直すたびに全ファイルを貼り直し、新しいバージョンでデプロイしています。

通知用の.gsは、登録があったときに知らせる役目のファイルです。GASからの通知の組み方は、GASでLINEに通知を送る方法にまとめています。

手で貼る運用だと、3つの層すべてで止まり得る

手貼りの運用では、貼り忘れと出し忘れが両方起きます。私のアプリで一番手こずったのは、そのどちらでもありませんでした。3層目のIDの食い違いです。

AIで業務を自動化した事例は、AI自動化の実例集にも並べています。ここではGASの反映に絞ります。

1層目 直したコードはエディタに入っているか

1層目は、直したコードがGASのエディタに入っていない状態です。ローカルのファイルをいくら直しても、エディタに貼るまでGASは何も知りません。/devで開いて変化が無ければ、まずここを疑ってください。

保存していない変更は/devにも出ない

Googleの公式ドキュメントは、テスト用のデプロイについてこう書いています。

The head deployment always syncs with the most recently saved code.

出典 Google Apps Script公式「Create and manage deployments」

テスト用のURLは、保存された最新のコードに同期するという意味です。貼っただけで保存していない変更は、/devにも出ません。エディタのファイル名の横に未保存の印が残っていないか、見てください。

ファイルが複数あるなら、全部貼り直す

私のアプリは3ファイルあります。1つだけ貼って残り2つが古いと、画面とサーバー側の処理が食い違います。直したファイルが1つでも、私は3つとも貼り直しています。

貼る前には、ローカルで構文だけ確かめます。node –checkは.gsの拡張子を受け付けなかったので、.jsにコピーしてから通しました。構文が通っても動くとは限らない点は、後の節で書きます。

AIの完了報告は、エディタの中身と照らし合わせる

Claude Codeが直しましたと返しても、それはローカルのファイルの話です。エディタに入れるのは人の手になります。AIの完了報告の確かめ方は、Claude Codeで直したはずの変更が消えるときの実録で詳しく扱いました。

2層目 GASの修正は新バージョンを出すまで反映されない

GASの修正は、新しいバージョンを出してデプロイに指させるまで、公開中のURLには反映されません。/devで直っていて/execで直らないなら、この層です。GASの修正が反映されない相談の多くは、ここで解決します。

公式が案内している更新の手順

公式ドキュメントは、URLを変えずに更新する方法をこう説明しています。

When you want to update the code used by an existing deployment (like a web app), you create a new version and then edit the deployment to point to that new version. This updates the application for all users while maintaining the same URL or deployment ID.

出典 Google Apps Script公式「Create and manage deployments」

新しいバージョンを作り、既存のデプロイをそのバージョンに向け直す。これで同じURLのまま、全利用者のアプリが更新されます。

デプロイを管理から新バージョンを選ぶ5つの操作

URLを変えずに反映する手順

  1. エディタ右上の「デプロイ」を押す
  2. メニューから「デプロイを管理」を選ぶ
  3. 公開中のデプロイを選び、鉛筆のアイコン(編集)を押す
  4. バージョンの欄で「新バージョン」を選ぶ
  5. 画面下の「デプロイ」を押して閉じる
GASのデプロイを管理から新バージョンを選び、URLを変えずに修正を反映する5つの操作の図解

終わったら、/execのURLを開き直して確かめます。私は毎回、直した箇所を画面で1つ触ってから作業を終えています。

/devと/execの違い

テスト用URLと公開用URLの違い(公式ドキュメントより)
項目/dev(テスト用)/exec(公開用)
動くコード保存済みの最新コードデプロイが指すバージョン
開ける人スクリプトの編集権限がある人だけアクセス設定で許可した人
修正の反映保存した時点で反映新バージョンを指させた時点で反映
使いどころ公開前の動作確認利用者に配るURL

/devは編集権限のある人しか開けません。利用者から直っていないと言われたら、確かめるのは/execのほうです。

GASウェブアプリの更新でURLが変わるのはなぜ?

GASウェブアプリの更新でURLが変わるのは、新しいデプロイを作っているからです。デプロイを管理から更新すれば、URLは変わりません。公式ドキュメントには、デプロイごとに固有のURLかIDがあると書かれています。新しいデプロイを作れば、新しいURLが発行されるわけです。

新しいデプロイは、別の住所をもう1つ作る操作

GASウェブアプリの更新でURLが変わる理由。新しいデプロイはURLをもう1つ作り、デプロイを管理なら同じURLのまま新バージョンに切り替わる比較図

デプロイのメニューには、新しいデプロイとデプロイを管理が並んでいます。前者は、住所の違う公開先をもう1つ増やします。利用者のブックマークや、ほかのシステムに書いたURLは古いままです。

古いデプロイは古いバージョンを指し続けます。利用者は古い画面を使い続け、作った側は直したつもりになる。反映されないと感じる原因の1つです。

URLを配った後は、デプロイを管理だけを使う

URLを誰かに配ったら、以後の更新はデプロイを管理からだけ行ってください。私の運用でも、新しいデプロイは最初の1回しか押していません。増えてしまったデプロイは、デプロイを管理の一覧でアーカイブできます。

3層目 GASでスプレッドシートに反映されないときはIDを疑う

新バージョンを出しても直らないなら、コードが別のスプレッドシートを見ています。GASでスプレッドシートに反映されない症状は、コードの中身よりファイルのIDを先に確かめてください。この層は、手順をいくら正しく踏んでも直りません。

2026年6月15日、取引先がファイルを複製版に切り替えた

2026年6月15日、取引先の側で、業務に使うスプレッドシートを複製版に切り替えました。利用者は複製版で仕事を続けています。コードは、旧ファイルのIDを指したままでした。

症状は、新規登録が反映されない、というものです。アプリの画面からは登録できるのに、利用者が見る複製版には行が増えません。登録の書き込み先は、旧ファイルのほうでした。

旧ファイルが開ける限り、エラーは出ない

GASでスプレッドシートに反映されない原因。コードは旧ファイルのIDを指したまま、利用者は複製版を使っていたため新規登録が反映されなかった図

3層目が厄介なのは、エラーが出ないことです。openByIdは、渡されたIDのファイルを開けさえすれば、黙って書き込みます。旧ファイルは削除されていないので、エラーは1件も出ません。

次のコードは、構造だけを再現した例です。IDは架空の値に置き換えています。

<code>// コード.gs(再現例)
const SHEET_ID = 'XXXX_OLD_FILE_ID'; // 旧ファイルのIDのまま

function addRecord(row) {
  const ss = SpreadsheetApp.openById(SHEET_ID);
  ss.getSheets()[0].appendRow(row); // 旧ファイルに書き込み、エラーは出ない
}

// 通知用の.gs(再現例)
const NOTIFY_SHEET_ID = 'XXXX_OLD_FILE_ID'; // こちらにも同じIDが残っていた</code>

ID参照は2ファイルに1箇所ずつあった

私のアプリでは、スプレッドシートのIDを書いた箇所が2ファイルに1箇所ずつありました。コード.gsと、通知用の.gsです。片方だけ直すと、登録と通知で別のファイルを見る状態になります。

両方を複製版のIDに揃え、3ファイルを貼り直して、新バージョンでデプロイしました。これで新規登録は複製版に入るようになっています。IDを探すときは、全ファイルをopenByIdとIDの文字列で検索するのが確実です。

IDの管理を最初から1か所に寄せた在庫管理のシートもあります。GASで作った在庫管理キット Lite の中身を見てみてください。

ファイルの複製やバックアップのたびに起きる

スプレッドシートを複製すると、新しいファイルには新しいIDが付きます。コードに書いたIDは、自動では書き換わりません。複製やバックアップからの戻しがあった日は、この層を最初に疑ってください。

別ブックへの転記でも、同じくIDの指定がつまずきどころになります。エクセルで別ブックに転記する方法では、Excel側の同じ問題を扱いました。

GASデプロイが反映されないときの早見表とチェックリスト

GASデプロイが反映されないときは、症状から層を決めて、その層の直し方だけを試します。3層の早見表を置いておきます。

GASデプロイが反映されない原因の早見表
層見分け方直し方
1層目 エディタ/devで開いても変化がない全ファイルを貼り直して保存する
2層目 バージョン/devは直っていて/execは古いデプロイを管理で新バージョンを指させる
3層目 スプレッドシートID画面は新しいのに、シートに行が増えない全ファイルのIDを使用中のファイルに揃える

反映を確かめるチェックリスト

デプロイ前後に確かめる6項目

  1. 直したファイルだけでなく、全ファイルを貼ったか
  2. エディタで保存し、未保存の印が消えているか
  3. /devで開き、直した箇所が変わっているか
  4. デプロイを管理から、新バージョンを選んだか
  5. /execで開き、利用者と同じ画面で変化を確かめたか
  6. コード内のスプレッドシートIDが、利用者の使うファイルと同じか

ゼロから組むのがしんどい人へ

3層を毎回たどるのは、コードを書き慣れていない人には重い作業です。在庫の管理がしたいだけなら、動く形から始める手もあります。

GAS製の在庫管理キット Lite

GASで作ったスプレッドシートの在庫管理キットです。980円の買い切りで、月々の支払いはありません。自分でGASを一から書く前に、動く見本を手元に置きたい人向けに用意しました。

在庫管理キット Lite の中身を見る

ローカルで通ったコードはどう扱う?

ローカルで通ったコードは、構文が正しいと分かっただけのコードとして扱います。GASで本当に動くかは、エディタに入れて実際のシートで試すまで分かりません。直したコードと動いているコードは別物です。

getActiveSpreadsheetのコードはローカルから実シートを読めない

社内で使う備品在庫のスプレッドシートも、同じく手貼りで運用しています。こちらはgetActiveSpreadsheetで、スプレッドシートに紐づいたスクリプトです。ローカルのClaude Codeからは、実際のシートを読めません。

そのため、ローカルでできる確認は構文チェックまでです。実データで動くかは、GASのエディタの側でしか確かめられません。

検証していない間は構文チェックのみと書く

私はこの運用で、1つ決めごとを作りました。実シートで試していない間は、作業記録に構文チェックのみと明記することです。直りましたとは書きません。

AIに直させる場合も同じです。Claude Codeの報告が直しましたでも、実シートで確かめるまでは構文チェックのみ、と扱っています。GASとAIのAPIをつなぐ組み方は、GASからChatGPTやClaudeのAPIを呼ぶ自動化パターンで紹介しています。

まとめ GASデプロイが反映されないときは3層を上から見る

GASデプロイが反映されないときは、エディタ、バージョン、スプレッドシートIDの3層を上から見てください。/devで直っているかどうかで、どの層かはほぼ絞れます。新バージョンを出しても直らないなら、IDの食い違いを疑うのが近道です。

私が一番時間を使ったのは、手順では直らない3層目でした。旧ファイルが残っている限り、エラーは出ません。複製やバックアップの後は、コードに書いたIDを真っ先に確かめてください。

AIに作らせたアプリ、本当に動いていますか

AIアプリ点検室(月額980円)

私が自分のシステムで見つけた偽の成功を、確かめ方とAIへの頼み方つきで毎月2本お届けしています。「保存しました」と出るのに何も保存していなかった画面や、失敗を「0件」と表示していた画面の実録です。

点検室の内容を見る

GASデプロイが反映されないときによくある質問

Q. GASのデプロイが反映されないのはなぜですか?

原因は3つに分かれます。エディタに貼っていないか保存していない、新しいバージョンを出していない、別のスプレッドシートを見ている、のどれかです。

Q. GASのWebアプリをURLを変えずに更新するには?

デプロイを管理から公開中のデプロイを編集し、バージョンで新バージョンを選んでデプロイします。公式ドキュメントも、この方法なら同じURLのまま全利用者に反映されると説明しています。

Q. /devと/execの違いは何ですか?

/devは保存済みの最新コードで動くテスト用で、編集権限のある人しか開けません。/execはデプロイが指すバージョンで動く公開用のURLです。

Q. 新しいデプロイを作るとURLは変わりますか?

変わります。デプロイごとに固有のURLかIDが付くためです。URLを配った後の更新は、デプロイを管理から行ってください。

Q. 新バージョンを出したのにスプレッドシートに反映されないのはなぜですか?

コードが別のスプレッドシートのIDを指している可能性があります。openByIdは旧ファイルが開ける限りエラーを出しません。全ファイルのIDを、使われているファイルのIDに揃えてください。

Q. 保存ボタンを押しても何も起きないのはなぜですか?

画面側のJavaScriptがエラーで止まっている可能性があります。私のアプリでは、onclickに埋め込んだ値に改行が入り、SyntaxErrorで保存ボタンが無反応になりました。値をエスケープする関数に通して解決しています。

Q. claspを使えば反映の手間は減りますか?

エディタへ手で貼る手間は減らせます。ただし公開中のURLに反映するには、新しいバージョンでデプロイする操作が別に必要です。

Q. AIに直してもらったGASのコードが反映されないときは?

まずAIが直したのはローカルのファイルだけではないか確かめてください。エディタに貼って保存し、新バージョンでデプロイするまで、公開中のURLは古いままです。

Q. デプロイした後に元のバージョンへ戻せますか?

戻せます。デプロイを管理で公開中のデプロイを編集し、バージョンの欄で以前のバージョンを選んでデプロイします。

GASやAI活用の新しい記事をお知らせします

レコプラの公式LINEでは、記事の更新をお届けしています。GASやClaude Codeの実録を読み逃したくない人はどうぞ。

更新のお知らせを公式LINEで受け取る

この記事を書いた人

ゆうき。レコプラ(desire-planet.com)運営。Claude Codeに日本語で指示を出して、業務で使う仕組みを作っています。AI活用の受託として、企業向けのシステム納品とAI導入の継続支援を実務で担当。この記事のGASのWebアプリは、取引先の業務アプリとして保守しているものです。

レコプラ運営者プロフィール

公開日: 2026年9月29日 最終更新日: 2026年9月29日

出典

スプレッドシートの切り替え日、ID参照の箇所数、ファイル構成は、取引先の業務アプリの作業記録にもとづく実例です。再現コードのIDは架空の値です。

この記事を書いた人

この記事を書いた人:ゆうき

中小企業DX化コンサルタント × システム開発者
1987年生まれ / 高卒スタートから中小物流会社の業務改善責任者へ。

「大手コンサルを使わず、現場の泥臭いアナログ環境からシステム化を推進する」をモットーに活動。18年間の実務経験と、最新のAI(ClaudeやChatGPT)を組み合わせた「現場で本当に使える」確かなノウハウを発信しています。

分野と強み(Experience/Expertise)

  • 物流・DX化の最前線(歴18年):デジタルのない環境からIT化の全工程を実践。15社へのシステム導入で成功率99%、年間労働時間を35%削減。
  • AI・システム実務活用:ClaudeやChatGPT、バイブコーディング技術を駆使し、最新ITを机上の空論ではなく「現場の成果」に変換。(累計5,000万円以上のコスト削減実績)
  • 本業の知見を活かした副業展開:採用代行(成功率85%向上)やコンテンツ制作の手法を横展開し、個人でも最高月収35万円を達成。

読者へのお約束(Trustworthiness)

当ブログでは、18年間にわたる失敗と成功の実体験、そして自腹での検証に基づき、「実際に使って役立った情報・安全に稼げたノウハウ」だけを忖度なしで発信します。机上の空論ではないリアルな解決策で、あなたのビジネスや副業を支援します。

お問い合わせ:info @desire-planet.com

ロリポップ!なら大人気のWordpressも簡単インストール!
あなたもWordPressでブログデビューしちゃおう!!




ADVANCED SEO TECHNOLOGY

2026年 完全版
AIブログ記事自動生成キット

verified
Anti-AI-Smell
100点
layers
Schema
6層構造
language
NEXT GEN
AIO/GEO
speed
High Speed
30分量産
Starting at ¥980〜
今すぐ導入する arrow_forward
NEW 2026 EDITION
AIブログ記事自動生成キットのイメージ

無料テンプレ配布中

AIにExcelを正確に指示する
2枚見せテンプレ

関数を覚える話ではありません。今の表と、欲しい表。この2枚の渡し方だけをまとめました。 AIが行をこっそり飛ばしていないか確かめる検算3チェックもつけています。

LINEでテンプレを受け取る

友だち追加するとすぐにリンクが届きます。いつでもブロックできます。

Share / Subscribe
Facebook Likes
Posts
Hatena Bookmarks
Pinterest
Pocket
Evernote
Feedly
Send to LINE