-PR-
解決済み

WORD VBAのShapesのこと

  • 暇なときにでも
  • 質問No.65535
  • 閲覧数1318
  • ありがとう数2
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 47% (767/1609)

昨日TTakさんから下記のマクロを御教授いただいて助かっているのですが、特定のShapesを除外して下記を実行する方法があれば教えていただけないでしょうか。

Private Sub CommandButton1_Click()
Dim myf As String
myf = "ここに画像ファイルまでのパスとファイル名を入れる"
With ActiveDocument
For i = 1 To .Shapes.Count
.Shapes(i).Fill.UserPicture myf
Next i
End With
End Sub
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル12

ベストアンサー率 52% (206/389)

s-holmesさん、またまたこんにちは。
前回提示したコードは、任意の図形の因数 "Index" を変数にして、ドキュメント内のすべての図形に画像を入れるというものです。したがって、特定の図形だけはずすという場合は、(もうお解りですね)IF 文で、特定の Index 番号の時だけ "Shapes(i).Fill.UserPicture myf" を実行しないようにします。
しかし、一つ問題あります。それは、特定の図形の Index が何番なのかを探す方法です。
基本的には図形を書いた順番に割り振られていると思うのですが、当該図形をアクティブにした後、イミデイトウインドウに"?Selection.Index"と入れて[Enter]すると、Index値を返してくれます。しかし、この方法はEXCEL-VBAでは可能ですが、WORD-VBAではできません。苦肉の策として、"Name"が一致するか否かで一々判断させることにしました。
#この部分はもっといい方法があるかもしれません。

1, VBエディタを起動し、イミデイトウインドウも表示しておきます。
2, Wordドキュメントに戻って、画像を入れたくない図形を選択してアクティブにします。
3, 再度VBエディタに戻って、イミデイトウインドウに"?ActiveDocument.Shapes(1).Name=selection.ShapeRange.Name"と記入し、[Enter]します。
4, 下の段に"TRUE"と出るまで、Shapes(1),Shapes(2),Shapes(3)....とindex値を変化させます。
5, "TRUE"が出ると、選択された図形のindexが判りますので、下記のようにコードを分岐します。

Private Sub CommandButton1_Click()
Dim myf As String, i As Integer, x1 As Integer
myf = "ここに画像ファイルまでのパスとファイル名を入れる"
x1 = 画像を入れたくない図形のindex値
With ActiveDocument
For i = 1 To .Shapes.Count
If i = x1 Then Exit For Else .Shapes(i).Fill.UserPicture myf
Next i
End With
End Sub

index値を追加する場合はx2,x3,.....として、If文の条件分岐を追加してください。
Word2000にて動作確認済みです。
お礼コメント
s-holmes

お礼率 47% (767/1609)

TTakさん、またまたありがとうございます。「イミデイトウインドウ」とはなんぞや、「イミ」がわからない、と一瞬硬直しましたが、なんとかたどりつきました。そして、目的の動作ができました。
これぞ裏ワザって感じなのかわかりませんが、とても勉強になりました。

#これで、多分自分の今回やりたいことはクリアできたと思っています。お手数をおかけしました。
投稿日時 - 2001-04-19 13:48:10
関連するQ&A
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ