- 締切済み
word VBA 文字列操作について
WORD2007にて、文書内にいくつかの描画キャンバスがあり、この中にいくつかのオートシェイプがあります。(グループ化されたものも含む) マクロにてこのオートシェイプ内の文字列をすべて特定のフォントに変更したいのですが、どなたかCODEを教えて頂けないでしょうか? On Error Resume Next Dim shp As Shape For Each shp In ActiveDocument.Content.ShapeRange shp.Select Selection.Font.Name = "RFPイワタ中太教科書体" Selection.Font.NameAscii = "RFPイワタ中太教科書体" Next shp というものも他のサイトで見つけたのですが、おそらくオートシェイプが描画キャンバス内にあるためにSelectされないのだと思われます よろしくお願いします
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- enunokokoro
- ベストアンサー率74% (3543/4732)
私は古いバージョンでしか試せないので、Word2007にて 可能かどうかわかりません。 それと[描画キャンバス]内のグループ化されたものだと、 私の示したものではSelectされません。 それでもよければ試してみてください。 '------------------ここから------------------ Sub FontInCanvas() On Error Resume Next Dim canvas As Shape Dim cItem As Shape For Each canvas In ActiveDocument.Shapes If canvas.Type = msoCanvas Then For Each cItem In canvas.CanvasItems cItem.Select Selection.Font.Name = "RFPイワタ中太教科書体" Selection.Font.NameAscii = "RFPイワタ中太教科書体" Next End If Next End Sub '------------------ここまで------------------ グループ化したものは、Shape.GroupItemsプロパティが おそらく関係しているのだと思いますが、それを使う方法 が分かりませんでした。 http://msdn.microsoft.com/ja-jp/library/microsoft.office.interop.excel.shape.groupitems(office.11).aspx