「excel rectangleにテキストを入力したい」
といった検索キーワードで、このサイト『インストラクターのネタ帳』へのアクセスが時折あります。
VBAから、Rectangleオブジェクトに、
テキスト・文字列入力する方法を探していらしたのでしょうか。
既にご紹介しているとおり、Shapeオブジェクトの、TextFrameオブジェクトの、Charactersオブジェクトの、Textプロパティを利用するのが、まあ、基本です。
ですが、もっとシンプルな、裏技的なコードでもいけますので、一応、ご紹介しておきます。
1つ目のRectangleにテキストを設定するサンプルマクロ
以下のSubプロシージャを実行すると、アクティブシートの1つめのRectangleに文字列が設定されます。ActiveSheet.Rectangles(1).Text = "テキストのサンプル"
End Sub
オブジェクトブラウザーで非表示のメンバーを表示すると、RectanglesコレクションオブジェクトとRectangleオブジェクトが存在していることがわかります。
このRectangleオブジェクトのTextプロパティを使ってテキストを設定しているのが、
上記のコードです。
選択されているRectangleにテキストを設定するサンプルマクロ
四角形を選択しておいてから、以下のSubプロシージャを実行すれば、選択されていたRectangleにテキストが設定されます。Selection.Text = "テキストのサンプル(Selection)"
End Sub
Selectionプロパティは、図形の四角形などが選択されているときに、Rectangleオブジェクトを返します。
Selectionプロパティで返された、Rectangleオブジェクトの、Textプロパティを設定しているのが、上記のコードです。
一般的にはあまりおすすめしないRangeオブジェクトのTextプロパティではありますが、レガシーなオブジェクトであるRectangleを理解したいという方は、一度確認しておくと、いいかも、しれません。
最終更新日時:2018-12-10 15:58
Home » エクセルマクロ・Excel VBAの使い方 » DrawingObjectsオブジェクト » Rectangleにテキストを
TrackBack:0
- TrackBack URL