拙著『理解するExcel VBA/図形操作の基本』の、「7-5. Rectangle・Oval・DrawingObjectsとは」で、DrawingObjectsコレクションについて少しだけ解説しています。
DrawingObjectsコレクションに関連して、間違った記述をしている市販書籍を見てしまったので、記事にさせていただきます。
DrawingObjectsコレクションの要素オブジェクトがDrawingObjectオブジェクトである、といった内容が記載されている2018年5月に出版された入門者向けではないExcel VBA本があります。しかし実際には、Excel VBAに「DrawingObject」という名前のオブジェクトは存在しません。
オブジェクトブラウザーで検索すれば、DrawingObjectオブジェクトが存在しないことを確認できます。
オブジェクトブラウザーで[完全に一致する単語だけを検索][非表示のメンバーを表示]オプションをOnの状態にして、「DrawingObject」を検索すると、Shapeオブジェクトに用意されているDrawingObjectプロパティはヒットしますけれど、
「DrawingObject」という名前のオブジェクトはヒットしません。
もちろん「DrawingObjects」を完全一致検索した場合には、DrawingObjectsコレクションがヒットします。
DrawingObjectオブジェクトが存在しない件については、こちらのページにも、以下のような記述があります。
DrawingObjectsは、Shapesコレクションが登場する前にExcel VBAで採用されていた、図形の集合を表すコレクションオブジェクトです。Shapeオブジェクトに相当する、単体の図形を表すオブジェクトは、後述するRectangleなどの各図形ですが、ここでは総称として仮に「DrawingObjectオブジェクト」と呼びます(実際には、DrawingObjectという単体のオブジェクトはありません)。
最終更新日時:2022-04-21 15:30
Home » エクセルマクロ・Excel VBAの使い方 » DrawingObjects » DrawingObjectオブジェクトはExcel VBAに存在しません