(license)みなさん、こんにちは!タカハシ(@ntakahashi0505)です。GASでGoogleスライドのプレゼンテーションを楽々作成するテクニックについてシリーズでお伝えしています。前回の記事はこちら!GASでスプレッドシートのデータをもとにGoogleスライドの文字列を置換するGASでGoogleスライドのプレゼンテーションを楽々作成するテクニックについてお伝えしています。今回は、GASでスプレッドシートのデータをもとにGoogleスライドの文字列を置換するスクリプトを紹介します。tonari-it.com2020.02.03スプレッドシートのデータをもとにスライド内の文字列を置換するスクリプトを紹介しました。多くの場合は、テンプレートのプレゼンテーションのコピーを作成してから、置換をほどこしていくはずですね。いうことで、今回はGASでGoogleスライドのプレゼンテーションをコピーする方法をお伝えしていきます。行ってみましょう!目次プレゼンテーションのコピーの方法はDriveサービスを使ったファイルコピードライブのファイルをコピーするファイルIDを使ってFileオブジェクトを取得するプレゼンテーションをコピーするスクリプトまとめ連載目次:GASでGoogleスライドのプレゼンテーションを楽々作成プレゼンテーションのコピーの方法はさて、スプレッドシートにはSpreadsheetクラスにcopyメソッドがあるのですが、プレゼンテーションのコピーについては、そのものずばりのメソッドがありません。これはプレゼンテーションだけでなく、ドキュメントもそうですし、他のサービスの多くもそうです。copyメソッドが用意されているSpreadSheetサービスだけが特別のようですね...それで、どうすればよいかというと、Driveサービスの機能をお借りすることで実現することができます。Driveサービスを使ったファイルコピードライブのファイルをコピーするDrive内のファイルは、Fileオブジェクトとして操作できます。Slidesサービスから見たらPresentationオブジェクトなのですが、Driveサービスから見たらそれはFileオブジェクトなのです。いうことで、ファイルをコピーするには、FileオブジェクトのmakeCopyメソッドを使えばOKです。Fileオブジェクト.makeCopy(ファイル名)ファイル名にはコピーのファイル名を指定します。省略すると、「~のコピー」というファイル名になります。ファイルIDを使ってFileオブジェクトを取得するそのmakeCopyメソッドを使うには、そもそもコピー元となるファイルをFileオブジェクトとして取得する必要があります。そのために、DriveAppクラスのgetFileByIdメソッドを使うことができます。DriveApp.getFileById(ファイルID)ファイルIDでファイルをFileオブジェクトとして取得するわけです。今回はプレゼンテーションですが、URLの以下{ファイルID}の文字列が該当しています。https://docs.google.com/presentation/d/{ファイルID}/edit#このIDはSlidesサービスから見たら、プレゼンテーションIDであり、Driveサービスから見たら、ファイルIDになるわけです。プレゼンテーションをコピーするスクリプトでは、プレゼンテーションをコピーするスクリプトについて見ていきましょう。sourceFile.makeCopy();}関数copyTemplateが実行用の関数で、こちらを実行すると、sourceFileIdを引数として関数copyPresentation_を呼び出し、コピーが実行されます。実行すると、数秒ほどかかります(プレゼンテーションのコピーは時間がかかるかもですね)。ドライブを確認すると以下のようにテンプレートのコピーができていることが確認できます。まとめ以上、GASでGoogleスライドのプレゼンテーションをコピーする方法をお伝えしました。copyメソッドほしいですけどね...まあ、しかたなしです。Driveサービスのちからを借りて、makeCopyメソッドを使いましょう。次回は、作成したプレゼンテーションを戻り値として返す方法です。レポート、プレゼンテーションなど、テンプレートをもとにGoogleスライドのプレゼンテーションを作るというお仕事はけっこうあります。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。SQLのデータベースにアクセスする方法をシリーズでお伝えしています。今回は、実際にJDBCサービスでデータベースに接続をして、その接続を確認していきます。Scriptでメールマガジンを送るシステムを作っています。本文はドキュメントで作成をしたいと思いますので、今回はGASでドキュメントを取得する方法についてお伝えをしていきます。Scriptでサイドバーを作る方法をお伝えしています。Scriptのサイドバーでテキストエリアを翻訳するスクリプトを作成していきます。Script入門として名言Botの作り方をお伝えしています。今回は、コードに直書きしたくないデータを格納する機能プロパティストアについて、またスクリプトプロパティの入力の方法です。Script新構文をさっそく試そう!GASのプロジェクトをV8ランタイムに切り替える方法GASでV8ランタイムがサポートされたことにより、ECMAScriptの構文が使用できるようになりました。今回は、GASのプロジェクトについてV8ランタイムに切り替える方法についてお伝えしていきます。ScriptGASのWebページにGoogleドライブ内の画像を挿入する方法GASユーザー向けHTML入門ということで簡単なWebページの作り方をお伝えしています。ScriptによるWebページにGoogleドライブ内の画像を挿入する方法です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Apps2PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Apps2PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。開発者プログラムとは、またどうして期限切れになったのか2020.02.222020.02.22ノンプロ研の福岡で初イベント「ノンプロ研無料体験@福岡」を開催しました!2020.02.14GASのV8ランタイムとRhinoランタイムのログと実行のUIの違いについて比較&解説2020.02.092020.02.09新構文をさっそく試そう!GASのプロジェクトをV8ランタイムに切り替える方法2020.02.082020.02.12Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。