アドベントカレンダー 6日目
オートシェイプのテキスト名を取得/変更したい
マクロの記録を使うと以下のようなコードを返してくる。
つまり、Characters.Textとすると値がRead/Writeできるわけです。
ところが、いちいちSelectしてから操作するのはいまいちなので
Selectを省略してみると、さっそくエラーとなります。
Characters.Textは、アクティブなオートシェイプに対してしか、
テキストのRead/Writeはできないようです。
そのため、Characters.Textではなく
TextFrame.Characters.TextであればSelectしておく必要がなくなります。
オートシェイプのテキスト名を取得/変更したい
マクロの記録を使うと以下のようなコードを返してくる。
(いろいろ 略) ActiveSheet.Shapes("オートシェイプ名").Select Selection.Characters.Text = "aabb" (いろいろ 略)
つまり、Characters.Textとすると値がRead/Writeできるわけです。
ところが、いちいちSelectしてから操作するのはいまいちなので
Selectを省略してみると、さっそくエラーとなります。
ActiveSheet.Shapes("オートシェイプ名").Characters.Text = "aabb"
Characters.Textは、アクティブなオートシェイプに対してしか、
テキストのRead/Writeはできないようです。
そのため、Characters.Textではなく
TextFrame.Characters.TextであればSelectしておく必要がなくなります。
ActiveSheet.Shapes("オートシェイプ名").TextFrame.Characters.Text
Thisworkbook.ActiveSheet.Shapes("オートシェイプ名").TextFrame.Characters.Text
0 件のコメント:
コメントを投稿