プロが教えるわが家の防犯対策術!

ワードマクロで現在以下内容のマクロを作成しています。
⑴図形の挿入(50*50の正方形)
⑵作成した図形をテキストの背面に移動
⑶作成した図形の枠線を消す
⑷作成した図形を画像で塗りつぶす(フォルダまで指定して、ファイルはユーザーが選択、選択は単体のみ)

⑶まではなんとか動作するのですが、⑷がうまくできません。
今回初めてのマクロ作成なので不足が多いとは思いますが、ご教授お願い致します。

【現在までの内容】
Option Explicit

Sub テスト()
'
' テスト Macro
'
'
ActiveDocument.Shapes.AddShape(msoShapeRectangle, 50, 50, 50, 50).Select
Selection.ShapeRange.ZOrder msoSendBehindText
Selection.ShapeRange.Line.Visible = msoFalse
Selection.ShapeRange.Fill.Visible = msoTrue
Selection.ShapeRange.Fill.UserPicture "D:\画像フォルダ" = Application.FileDialog(msoFileDialogOpen).Show
End Sub


宜しくお願い致します。

A 回答 (1件)

画像の指定は先に変数として処理したほうが簡単だと思う。


マクロは得意分野ではないので、ネット上の参考例を継ぎ接ぎした
ものですが、一応動くと思います。

Sub テスト改()
'
' 変数処理を加えて改めたテスト Macro
'

Dim myFilePath As String '画像ファイルのパス
Dim myFolderPath As String 'フォルダのパス

myFolderPath = "D:\画像フォルダ"

 With Application.FileDialog(msoFileDialogOpen)
   .AllowMultiSelect = False
   .InitialFileName = myFolderPath & "\"
   .Show
  myFilePath = .SelectedItems(1)
 End With

ActiveDocument.Shapes.AddShape(msoShapeRectangle, 50, 50, 50, 50).Select
 With Selection.ShapeRange
   .ZOrder msoSendBehindText
   .Line.Visible = msoFalse
   .Fill.Visible = msoTrue
   .Fill.UserPicture myFilePath
 End With

End Sub
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!