WordVBA コンテンツコントロールを知った
program.station.ez-net.jp
このような記事を見つけました。コンテンツコントロールというすごいものがWordにある。
これはイイ。
Wordはけっこう使ってるつもりだったんですが,今回マクロでいじろうと思うまで,コンテンツコントロールというものの存在を知りませんでした。
開発のリボンにたしかに知らないものがある。
挿入して,そのプロパティを見ることができます。いろいろあるけど,タイトルとタグの二つを設定できるようです。
これは期待できます。
使ってみたら,これはすごい。考えた人すごい。久々にWordに感動した。キミモスゴイヤツダ。
3つのコンテンツコントロールを入れ,タイトルは CC1 CC2 CC3 タグにはすべて CCといれました。
このようなコードを書いてみる。
Sub Test() Dim Doc As Document Set Doc = ActiveDocument Dim cc As ContentControl For Each cc In Doc.ContentControls If cc.Tag = "CC" Then cc.Range.Text = "" Next Stop For Each cc In Doc.ContentControls If cc.Title = "CC1" Then cc.Range.Text = "これはCC1です" If cc.Title = "CC2" Then cc.Range.Text = "これはCC2ですね" Next End Sub
かなり短いアニメーションGIFですがわかっていただけるでしょうか。
最初のループでタグがCCのコンテンツコントロール,つまり3つとも値を""にまとめて処理できてる。
次のループでCC1とCC2に値を設定できています。
これがあれば 狙い撃ちできちんと値を変えることができます。
前回の記事と今回のコンテンツコントロールの二つがあれば,ほんと,楽勝でやれそーだ。
Wordもスゴイ。Word Macroの本注文したので,早く来ないかなぁ。他にもいろいろ学べば,さらに広がる気がします。
VBA仲間探索のため,ブログ村に参加しています。
にほんブログ村