Home » パワーポイントマクロ・PowerPoint VBAの使い方 » PowerPoint VBAとWord VBAのSelectionの違い

対象:PowerPoint2003, PowerPoint2007, PowerPoint2010, PowerPoint2013

 PowerPoint VBAとWord VBAのSelectionの違い

PowerPoint VBA(Visual Basic for Applications)とExcel VBAのSelectionの違いについてまとめました。

特に、Word VBAからPowerPoint VBAに入る人に向けて、WordとPowerPointのSelectionの違いについてもまとめておきます。

[スポンサードリンク]

WordもPowerPointもSelectionプロパティはSelectionオブジェクトを返す

WordのSelectionプロパティも、Selectionオブジェクトを返します。

 PowerPoint VBAとWord VBAのSelectionの違い

この部分は、Excelだけが特殊ということになります。

WordのSelectionはグローバルのメンバー

WordのSelectionプロパティはグローバルのメンバーです。

 PowerPoint VBAとWord VBAのSelectionの違い

ですから、上位のオブジェクト式を省略していきなり
 Selection.プロパティ/メソッド
という記述ができます。

この部分は、ExcelとWordが似ていて、PowerPointが特殊ということになります。

PowerPointのSelectionは、DocumentWindowオブジェクトを取得してから使う必要がありますから、必ず
 上位のオブジェクト式.Selection.プロパティ/メソッド
と書かなければなりません。

Word VBAの、
 Selection.プロパティ/メソッド
という記述に慣れている方は、この
 上位のオブジェクト式.Selection
と書かなければならない点は、戸惑うところでしょう。

WordのSelectionオブジェクトにはメンバーがたくさん

PowerPointのSelectionオブジェクトのメンバーは、それほどたくさんありません。

 PowerPoint VBAとWord VBAのSelectionの違い

上図の通り、PowerPointのSelectionオブジェクトのプロパティは、
 Application
 ChildShapeRange
 HasChildShapeRange
 Parent
 ShapeRange
 SlideRange
 TextRange
 TextRange2
 Type
の9個だけです。隠しプロパティもありません。

メソッドのほうは、
 Copy
 Cut
 Delete
 Unselect
と、名前から何をするか推測しやすい4つしかありません。隠しメソッドもありません。

これに対して、WordのSelectionオブジェクトには、とてもたくさんのメンバーが存在します。

 PowerPoint VBAとWord VBAのSelectionの違い

Microsoft MVP for Wordで「みんなのワードマクロ」の新田順也さんが、Wordマクロを作りはじめた頃は、Selectionばかりを使っていたというお話を伺ったことがあります。

それができたのは、WordのSelectionオブジェクトに、これだけたくさんのプロパティやメソッドが用意されているから、ということが関係しているはずです。

Wordマクロでは、オブジェクト式やオブジェクト構造をそれほど理解しなくても、Selectionオブジェクトを利用することで、かなりのことができてしまうということです。

しかしPowerPointの場合、Selectionオブジェクトだけではできることがかなり限定されていますから、しっかりとPowerPointのオブジェクト構造やオブジェクト式について理解する必要があります。

WordマクロでSelectionオブジェクトの多用だけで済ましてきた方が、PowerPoint VBAを使おうとしたときには、このことが大きなハードルになるはずです。

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » PowerPoint VBAとWord VBAのSelectionの違い

「パワーポイントマクロ・PowerPoint VBAの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.