『いちばんやさしいPowerPoint VBAの教本』P.283より
拙著『いちばんやさしいPowerPoint VBAの教本』のChapter 8で、PowerPoint VBAによる表操作について解説しています。
PowerPointの表に関して、Excelの表に変換したい、逆にExcelの表から変換したいといった要望を、よく耳にします。
PowerPointの表をVBAで操作したいという方は、拙著Chapter 7までで行っているのと同様に、オブジェクトブラウザーでCellオブジェクトの定義をしっかり確認してください。
PowerPoint.CellのできることはExcel.Rangeより少ない
特にExcel VBAに慣れている方に意識していただきたいのは、Excel VBAで単独のセルやセル範囲を操作する際に利用するRangeオブジェクトと、PowerPoint VBAで表のセルを操作する際に利用するCellオブジェクトとの違いです。
PowerPoint VBAで表内のセルを表すCellオブジェクトをオブジェクトブラウザーで表示すると、5つのプロパティと3つのメソッドだけを持っていることを確認できます。
一方Excel VBAでワークシート上のセルを表すRangeオブジェクトをオブジェクトブラウザーで表示すると、PowerPoint VBAのCellオブジェクトより、非常に多くのプロパティとメソッドが存在することが確認できます。
用意されているプロパティ・メソッドが少ないということは、そのオブジェクトのできる操作・処理が少ないということに他なりません。PowrPoint VBAのCellオブジェクトのできることは、Excel VBAのRangeオブジェクトより、はるかに少ないということです。
既存の知識が理解の邪魔をすることがある
何かを理解するということは、既に持っている知識に、新たな情報が何らかの形で関連付けられることです(その際、既存の知識が変化することも)。
この過程で、既存の知識が役立つこともあれば、邪魔をすることもあります。
Excel VBAをご存知の方がPowerPoint VBAで表を操作する処理を学習するときには、Excel VBAのRangeオブジェクトに関する知識が邪魔をするケースが少なからずあると感じます。
PowrPoint VBAで表内のセルを表すCellオブジェクトのできることは、Excel VBAでセルを表すRangeオブジェクトより、はるかに少ないということを強く意識してください。
PowerPointの表の場合、セルを表すCellオブジェクトそのものよりも、その下位オブジェクトであるShapeオブジェクトや、更に下位のTextFrameオブジェクト・TextRangeオブジェクトで処理するケースが多くなっています。
最終更新日時:2020-04-19 15:27
- Newer:InlineShapeがあるかを判定する
- Older:Word VBAでアクティブページ内のShape数を取得する
Home » いちばんやさしいPowerPoint VBAの教本 » セルを表すPowerPoint.CellとExcel.Rangeの違いを意識しましょう