Google関連

[Google Apps Script]すべてのスライド上のすべてのシェイプに対して処理を行う

今回もGoogle Apps Script(Google スライド)ネタです。
今回はすべてのスライド上にあるすべてのシェイプに対して処理を行うコードです。Google スライドでスクリプトを実行する方法については下記記事をご参照ください。

function myFunction() {
  var slides = SlidesApp.getActivePresentation().getSlides();
  slides.forEach(function(slide) {
    slide.getShapes().forEach(function(shape) {
      SlidesApp.getUi().alert(shape.getText().asString());
    });
  });
}

上記コードを実行すると、各スライド上にある各シェイプから文字列を取得し、メッセージボックスで表示していきます。

処理は単純で、下記のような流れで文字列を取得しています。

Presentation.getSlidesメソッドでスライドを配列として取得

forEach文でループ

Slide.getShapesメソッドでシェイプを配列として取得

forEach文でループ

Shape.getTextメソッドでTextRange取得

TextRange.asStringメソッドで文字列取得

コードを一部変更すれば、すべてのシェイプのフォントを変更する処理も簡単に実行できます。

function myFunction() {
  var slides = SlidesApp.getActivePresentation().getSlides();
  slides.forEach(function(slide) {
    slide.getShapes().forEach(function(shape) {
      //各シェイプのフォントを「Kosugi」に変更
      shape.getText().getTextStyle().setFontFamily("Kosugi");
    });
  });
  SlidesApp.getUi().alert("処理が終了しました。");
}

関連記事

  1. Word

    GoogleとYahoo!で同時に翻訳するWordマクロ

    「Google翻訳で文字列を翻訳するマクロ」と「Yahoo!翻訳で文字…

  2. Google関連

    [Google Apps Script]UrlFetchApp.fetchからのアクセス情報

    UrlFetchApp.fetchしたときに、アクセス対象のサーバーに…

  3. Excel

    Gmail APIを使ってメール送信するVBAマクロ

    「「Gmail API」β版公開、連動アプリ開発を支援」にもあるように…

  4. Google関連

    Google Apps Script Execution APIを試してみた。

    「「GAS Station #2」に参加してきました。」で書いた通り、…

  5. Excel

    Google スライドで新規プレゼンテーションを作成するVBAマクロ

    ここ数日PowerPointのマクロに加え、Google Apps S…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP