PowerPoint VBAでアクティブなプレゼンテーションを取得する方法


みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

初心者向けPowerPoint VBAのシリーズをお伝えしています。

前回の記事はコチラ。

【初心者向けPowerPoint VBA】オブジェクト・プロパティ・メソッドって何?
初心者向けにPowerPoint VBAの使い方を紹介するシリーズをお伝えしています。今回は、VBAで非常に重要な「オブジェクト」とは何かについて、またそれを操作するプロパティ・メソッドについてです。

PowePoint VBAを学ぶ上で重要な「オブジェクト」についてお伝えしました。

今回は、PowerPoint VBAでアクティブなプレゼンテーションを取得する方法を通じて、「オブジェクトを取得する」という作業について解説をしていきます。

では、行ってみましょう!

スポンサーリンク

前回のおさらい

前回はPresentationオブジェクトを操作する方法として、2つのコードを紹介しました。

まず、プロパティをイミディエイトウィンドウに表示するこちらのコード。

Sub プレゼンテーションのプロパティ()

Debug.Print ActivePresentation.Name
Debug.Print ActivePresentation.Path

End Sub

そして、メソッドを実行するコードですね。

Sub プレゼンテーションのメソッド()

ActivePresentation.Close

End Sub

オブジェクトに対するプロパティやメソッドの使い方について

オブジェクト.プロパティ

とか

オブジェクト.メソッド

とかお伝えしたのですが、そもそもコード内の「ActivePresentation」って、ナニモノなんでしょうか?

今回は、そのあたりについて解き明かしていきたいと思います。

オブジェクトブラウザーでオブジェクトとそのメンバーを確認する

そのヒントになるのがオブジェクトブラウザーです。

オブジェクトブラウザーは、VBAで使用できるオブジェクトとそのメンバー(メソッドやプロパティなどのこと)について、調べることができるツールです。

VBEのメニューから「表示」→「オブジェクトブラウザー」とたどってみてください。

もしくは F2 キーでもOKです。

VBEからオブジェクトブラウザーを開く

すると、「オブジェクトブラウザー」の画面が開きますので、左上のプルダウンから「PowerPoint」を選び、「クラス」というエリアから「<グローバル>」を選択します。

オブジェクトブラウザー

すると、「ActivePresentation」という今回知りたい情報を見つけることができました。

まず左上のプルダウンは「ライブラリ」を選ぶプルダウンです。例えば、PowerPointで操作できるオブジェクトについては「PowerPointライブラリ」内にまとめられています。

「クラス」というエリアに、そのライブラリ内で使用できるオブジェクトなどが記載されています。Presentation、Slide、Shapeをはじめたくさん用意されているのがわかると思います。

そして「メンバー」というエリアに使用できる「メソッド」や「プロパティ」などが一覧されています。ここで、VBAのプロパティのアイコンのアイコンは「プロパティ」、VBAのメソッドのアイコンのアイコンは「メソッド」となります。

つまり、「ActivePresentation」は「ActivePresentationプロパティ」である、ということがわかりました。

グローバルとは

本来、プロパティを使うのでれば

オブジェクト.プロパティ

という形式であるとお伝えしましたが、「ActivePresentation」がプロパティとすると、「オブジェクト」はどこに行ったのでしょうか?

これには「<グローバル>」というキーワードが関係しています。

ここに含まれているメンバーを使用する場合は、「オブジェクト.」を省略して、いきなり使用することができます。

本来であればActivePresentationプロパティは、Applicationオブジェクトのメンバーなので

Application.ActivePresentation

とすべきところですが、「Application.」を省略して

ActivePresentation

と記述することができるのです。

ActivePresentationプロパティとは

それで、結局のところActivePresentationプロパティがナニモノかというと、アクティブなPresentationオブジェクトを取得するプロパティです。

ActivePresentation

「アクティブなPresentationオブジェクト」というのは、「現在の操作対象となっているPresentationオブジェクト」ということです。

なお、前述の通り、ActivePresentationプロパティはグローバルのプロパティなので、対象のオブジェクトを省略して使用することができますので、いつどんなときでも「ActivePresentation」と記述すれば、アクティブなPresentationオブジェクトを取得することができます。

オブジェクトを「取得する」とは

さっきから「取得する」と言ってますが、「取得する」とはどういうことでしょうか?

ActivePresentationプロパティは、アクティブなPresentationオブジェクトを取得するプロパティです。

つまり「ActivePresentation」といきなりプロパティを記述できますが、その部分は「アクティブなPresentationオブジェクト」を表します。

ほら、今までの説明だと

ActivePresentation.Name

これは、「プロパティ.プロパティ」になっちゃうわけなのですが、ActivePresentationプロパティがアクティブなPresentationオブジェクトを表してくれるおかげで「Presentationオブジェクト.プロパティ」となっているというわけです。

このように、プロパティでオブジェクトを取得するという式(これをオブジェクト式と言います)の書き方は頻繁に求められますので、覚えておいてくださいね。

まとめ

以上、今回はPowerPoint VBAでアクティブなプレゼンテーションを取得するActivePresentationプロパティについてお伝えしました。

また、それに加えて

  • オブジェクトブラウザーとは何か
  • グローバルなメンバーとは何か
  • オブジェクトを取得するとは

といったことについてもお伝えしました。

説明ばっかりで飽きちゃったかも知れませんが、大丈夫です。

次回からガンガンオブジェクトを取得していきます。

【初心者向けPowerPoint VBA】SlidesコレクションとSlideオブジェクトを取得する
初心者向けにPowerPoint VBAの入門シリーズをお送りしています。今回はPowerPoint VBAでプレゼンテーションのスライドを取得する方法、コレクションとは何かについてお伝えします。

どうぞお楽しみに!

連載目次:初心者向けPowerPoint VBAのはじめの一歩

PowerPointはお仕事で非常によく使うプレゼンテーション作成ソフトですよね。実は、PowerPointでもVBAでプログラミングができるんです。本シリーズでは、初心者向けにPowerPoint VBAの初め方についてお伝えしていきます。
  1. 初心者向けPowerPoint VBAを始める際にはじめにやっておくべきセッティングと手順
  2. 【初心者向け】はじめてのPowerPoint VBAを作成して実行してみよう
  3. 【初心者向けPowerPoint VBA】オブジェクト・プロパティ・メソッドって何?
  4. PowerPoint VBAでアクティブなプレゼンテーションを取得する方法
  5. 【初心者向けPowerPoint VBA】SlidesコレクションとSlideオブジェクトを取得する
  6. PowerPoint VBAでShapeコレクションについてFor Eachループを回す方法
  7. 【初心者向けPowerPoint VBA】Shapeオブジェクトのテキストを取得する方法
  8. PowerPoint VBAでフォント設定をするFontオブジェクトを取得する
  9. PowerPoint VBAでシェイプのフォント設定をする色々なプロパティまとめ
  10. PowerPoint VBAのFor Each文とFor文によるループとその使い分けについて

タイトルとURLをコピーしました