遅刻の「言い訳」選手権

VBAの初心者です。教えてください。
色々なWEBサイトより情報を集めてWORD文書を作成しています。フォント名、サイズ、色がバラバラで、それを統一するVBAは以下のように出来たのですが、ハイパーリンクされている文字の色も黒になっています。ハイパーリンクされている文字色だけは本来の青色で表示したいのですが、どのようにしたらいいのか分かりません。よろしくお願いします。 (WORD2007 Windows7)

Sub フォント変換()
'
'

With ActiveDocument.Content.Find
.Text = MatchiWildcards
.Format = True
.Font.Size = 11
With .Replacement
.Font.Name = "MS Pゴシック"
.Font.Size = 10.5
.Font.Color = wdColorBlack
.Font.Bold = False
End With
.Execute Replace:=wdReplaceAll
End With

With ActiveDocument.Content.Find
.Text = MatchiWildcards
.Format = True
.Font.Size = 12
With .Replacement
.Font.Name = "MS Pゴシック"
.Font.Size = 10.5
.Font.Color = wdColorBlack
.Font.Bold = False
End With
.Execute Replace:=wdReplaceAll
End With

End Sub

A 回答 (2件)

こんなカンジ



Sub macro1()
 Dim h As Hyperlink

’全文のフォントを設定する
 With ActiveDocument.Range(0, ActiveDocument.Range.End).Font
  .Name = "MS Pゴシック"
  .Size = 10.5
  .Bold = False
  .Color = wdColorBlack
 End With

’ハイパーリンクスタイルを再設定する
 For Each h In ActiveDocument.Hyperlinks
  h.Range.Style = wdStyleHyperlink
 Next
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。希望通りに通りにできました。
全てのフォントを10.5にするのではなく8ポイントとかそのまま残しないフォントがありましたので、変更したいフォントサイズを指定しました。 でもORを使って短くする方法があるのでしょうね。
勉強します。

お礼日時:2012/02/24 10:28

終りの方に、次を追加するとか。



With ActiveDocument

For i = 1 To .Hyperlinks.Count
.Hyperlinks(i).Range.Font.ColorIndex = wdBlue
Next

End With
    • good
    • 0
この回答へのお礼

ありがとうございます。 KEITHINさんとは違う方法ですが、同じ回答が得られました。
もって勉強します。

お礼日時:2012/02/24 10:33

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報