VBAのSelectionの違いについてまとめました。VBAに入る人に向けて、WordとPowerPointのSelectionの違いについてもまとめておきます。[スポンサードリンク]WordもPowerPointもSelectionプロパティはSelectionオブジェクトを返すWordのSelectionプロパティも、Selectionオブジェクトを返します。この部分は、Excelだけが特殊ということになります。WordのSelectionはグローバルのメンバーWordのSelectionプロパティはグローバルのメンバーです。上位のオブジェクト式を省略していきなりSelection.プロパティ/メソッドという記述ができます。この部分は、ExcelとWordが似ていて、PowerPointが特殊ということになります。PowerPointのSelectionは、DocumentWindowオブジェクトを取得してから使う必要がありますから、必ず上位のオブジェクト式.Selection.プロパティ/メソッドと書かなければなりません。VBAの、Selection.プロパティ/メソッドという記述に慣れている方は、この上位のオブジェクト式.Selectionと書かなければならない点は、戸惑うところでしょう。WordのSelectionオブジェクトにはメンバーがたくさんPowerPointのSelectionオブジェクトのメンバーは、それほどたくさんありません。上図の通り、PowerPointのSelectionオブジェクトのプロパティは、ApplicationChildShapeRangeHasChildShapeRangeParentShapeRangeSlideRangeTextRangeTextRange2Typeの9個だけです。隠しプロパティもありません。メソッドのほうは、CopyCutDeleteUnselectと、名前から何をするか推測しやすい4つしかありません。隠しメソッドもありません。これに対して、WordのSelectionオブジェクトには、とてもたくさんのメンバーが存在します。Wordで「みんなのワードマクロ」の新田順也さんが、Wordマクロを作りはじめた頃は、Selectionばかりを使っていたというお話を伺ったことがあります。それができたのは、WordのSelectionオブジェクトに、これだけたくさんのプロパティやメソッドが用意されているから、ということが関係しているはずです。Wordマクロでは、オブジェクト式やオブジェクト構造をそれほど理解しなくても、Selectionオブジェクトを利用することで、かなりのことができてしまうということです。PowerPointの場合、Selectionオブジェクトだけではできることがかなり限定されていますから、しっかりとPowerPointのオブジェクト構造やオブジェクト式について理解する必要があります。VBAを使おうとしたときには、このことが大きなハードルになるはずです。オブジェクト式解説編』を開催します。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。