Word VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


40 / 837 ←次へ | 前へ→

【822】蛍光ペンの置き換えが表内で止まる
質問  ぱたぱた  - 17/7/31(月) 15:30 -

引用なし
パスワード
   はじめまして。Wordマクロ初心者のため要領を得ないかもしれませんが、もしご存じの方がいらっしゃいましたら是非よろしくお願いいたします。

以下のような、黄緑色の蛍光ペンを検索して水色に置き換えるマクロを作成しました。
表の中に蛍光ペンを含まない場合は問題なく置換が完了するのですが、表の中に蛍光ペンを含む場合は蛍光ペンの色が何色か、置換するしないに関係なくそこで動作が止まってしまい、最終的にはWordを強制終了するしかなくなってしまいます。
おそらく表内の蛍光ペンの識別がうまくいかず止まっている(ぱっと見た感じでは無限ループのように見えます)のではないかと思うのですが、解決方法がわかりません。

表内の蛍光ペンは検索しないなどの方法でもかまいませんので、なんとか強制終了することなく置換を終えることはできないでしょうか。

よろしくお願いいたします。

Sub Replace_Color()

  Selection.Find.ClearFormatting
  Selection.Find.Highlight = True
  Selection.Find.Replacement.ClearFormatting
  Selection.Find.Replacement.Highlight = True
  With Selection.Find
    .Text = ""
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindStop
    .Format = True
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = True
  End With
  Do
    Selection.Find.Execute
    If Not Selection.Find.Found Then Exit Do
    
    If Selection.Range.HighlightColorIndex = wdBrightGreen Then
      Selection.Range.HighlightColorIndex = wdTurquoise
    End If
  Loop
  
End Sub

87 hits

【822】蛍光ペンの置き換えが表内で止まる ぱたぱた 17/7/31(月) 15:30 質問[未読]
【823】Re:蛍光ペンの置き換えが表内で止まる 亀マスター 17/8/1(火) 20:20 回答[未読]
【824】Re:蛍光ペンの置き換えが表内で止まる ぱたぱた 17/8/2(水) 12:33 お礼[未読]
【825】Re:蛍光ペンの置き換えが表内で止まる マナ 17/8/9(水) 19:45 発言[未読]

40 / 837 ←次へ | 前へ→
ページ:  ┃  記事番号:
198781
(SS)C-BOARD v3.8 is Free