word vba 中如何选择某一段中有下划线的部分内容作为range, 改为指定的内容

 我来答
杨华山yhs
推荐于2016-07-13 · TA获得超过202个赞
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:166万
展开全部
Public Sub 查找选择()
Dim N As Long

For N = 1 To ActiveDocument.Paragraphs.Count
ks = 0
js = 0
ActiveDocument.Paragraphs(N).Range.Select
bbbb = Selection.Text
sss = Selection.End - 1

Selection.MoveUp Unit:=wdParagraph

For x = 1 To sss

Selection.Find.ClearFormatting
With Selection.Find
.Text = "*"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
End With
Selection.Find.Execute
aaaaa = Selection.Text

If Selection.Font.Underline = wdUnderlineSingle Then
If ks = 0 Then
ks = x
End If
Else
If js = 0 And ks <> 0 Then
js = x
End If

End If

Next x
If js <> 0 And ks <> 0 Then
ActiveDocument.Paragraphs(N).Range.Select
Selection.MoveUp Unit:=wdParagraph
Selection.MoveRight Unit:=wdCharacter, Count:=ks - 1
Selection.MoveRight Unit:=wdCharacter, Count:=js - ks, Extend:=wdExtend
Selection.Text = "DDDDDD" '指定内容
Selection.Font.Name = "仿宋_GB2312"
Selection.Font.Bold = wdToggle
Selection.Font.Size = 16
Selection.Font.Underline = 0
end if
Next N

End Sub
天马QY
2012-07-09
知道答主
回答量:20
采纳率:100%
帮助的人:19.3万
展开全部
按照你的意图,示意一下

Sub 删除下划线换成_()
'
Selection.Find.ClearFormatting
With Selection.Find
.Forward = True
.Font.Underline = wdUnderlineSingle
End With

Do While Selection.Find.Execute
Selection.Font.Underline = 0
Selection.Font.Name = "仿宋_GB2312"
Selection.Font.Bold = wdToggle
Selection.Font.Color = wdColorRed
Selection.Font.Size = 16

Selection.MoveRight Unit:=wdCharacter
Loop
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小洋葱857
2018-08-31 · 超过49用户采纳过TA的回答
知道小有建树答主
回答量:180
采纳率:33%
帮助的人:77.1万
展开全部
用“天马QY ”的方法测试成功,就是不好理解。求大师能解答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式