資料全体なら検索と置換、特定のスライドだけを一括で変える場合はSlides APIのページ指定を使います。
3枚の練習資料を使い、変更したくないスライドが残ることまで確認します。
練習データ・スライド・PDF・コードTXTをダウンロードすると、同じ入力で試せます。
実務ファイルは変更前にコピーを作ります。
画面は2026年10月2日のパソコンのブラウザー版です。
標準の検索と置換で資料全体を変える
slides-practice.pptxをGoogleスライドとして開き、コピーを作って試します。
各ページにはCGメソッドが2か所ずつあります。
編集 → 検索と置換、またはWindowsのCtrl+Hで検索CGメソッド、次に置換ブログを入れ、すべて置換を押します。
MacではCommand+Shift+Hです。
1か所ずつ判断する場合は次へで位置を確認し、変更したい箇所だけ置換を押します。
今回の標準一括置換テストは、APIで先に2枚目だけ変更した資料の残る4か所を変更し、元に戻すボタンで1・3枚目を復旧しました。
2枚目だけを対象にする
特定スライドの一括置換は、プレゼンテーションIDとページIDを使って対象を指定します。
今回の実際のSlides APIでは、2枚目を指定した結果が2件となり、1・3枚目の文字は変わりませんでした。

IDは自分のコピーのURLから読みます。
/d/と/editの間がプレゼンテーションID、末尾の#slide=id.に続く部分がページIDです。
元資料のIDや、テキストボックスのIDを代わりに入れないでください。
GASから同じAPIを呼ぶ補助例
Apps Scriptのサービス追加からGoogle Slides APIを有効にします。
標準のCloudプロジェクトへ切り替えている場合は、そのプロジェクトでもSlides APIを有効にします。
APIキーやサービスアカウントを手動作成する例ではありません。
初回は表示される権限と対象を確認します。
function replaceText() {
const presentationId = 'コピーしたプレゼンテーションのID';
const pageIds = ['置換対象のページID'];
const findText = 'CGメソッド';
const replacement = 'ブログ';
if (!pageIds.length || !findText) throw new Error('対象ページと検索文字列が必要です');
const current = Slides.Presentations.get(presentationId);
const existing = new Set((current.slides || []).map(page => page.objectId));
if (pageIds.some(id => !existing.has(id))) throw new Error('対象ページIDが見つかりません');
const result = Slides.Presentations.batchUpdate({
requests: [{replaceAllText: {
containsText: {text: findText, matchCase: true},
replaceText: replacement,
pageObjectIds: pageIds
}}],
writeControl: {requiredRevisionId: current.revisionId}
}, presentationId);
console.log(JSON.stringify(result.replies));
}コードはコピーのプレゼンテーションIDと、そのコピーのページIDへ変更します。
検索文字列は部分一致のため、CGメソッドの操作例もブログの操作例になります。
matchCaseは大文字と小文字を区別する設定です。
空の対象リストを拒否し、取得したページIDの一覧と照合してから更新します。
pageObjectIdsを省略する、または空配列にすると、対象限定が外れて広い範囲へ置換されるため、そのまま削除しないでください。
更新直前のrevisionIdも渡し、他の変更との競合を失敗として扱います。
置換されない文字と戻し方
0件なら対象ページ、検索文字列、大文字と小文字、画像の文字かどうかを確認します。
画像に焼き込まれた文字は、この文字列置換では変わりません。
テーマやノートの文字は、通常のテキストボックスと同じ対象だと決めつけず、所在を確認します。
置換後は改行や文字のはみ出しを確認します。
戻す場合は直後の元に戻すボタンか、変更前のコピーを使います。
逆の一括置換は、もともとブログだった文字まで変える可能性があるため、無条件の復旧方法にしません。
資料の出力はPDFの書き出しと取り込み手順をご覧ください。
公式の仕様と検証範囲
Slides APIのReplaceAllTextRequestで現在の仕様を確認できます。
対象限定、2件の置換、対象外の維持、標準一括置換とUndoは実際のGoogleサービスで確認しました。
上のGASからの実行と初回認証は未検証です。
API経由の検証をGAS実行済みとは扱っていません。
練習データとコードの使い方
練習ZIPには3つのTSV、3枚のPPTX、Googleから書き出したPDF、数式TXTとGASがあります。
担当者の非公開GoogleファイルIDは入っていません。
TXTにある数式はシート、GASはApps Scriptへ貼ります。
旧GitHub資料と今回の改訂コードは同じ版とは限りません。




