Word VBA如何实现有规律的批量查找替换
比如文章里面有3.1.1-1、3.1.1-2一直到3.1.1-100,但是其中3.1.1-50不想要了,想实现3.1.1-51以后替换成3.1.1-50,每个减少1,比如...
比如文章里面有3.1.1-1、3.1.1-2一直到3.1.1-100,但是其中3.1.1-50不想要了,想实现3.1.1-51以后替换成3.1.1-50,每个减少1,比如3.1.1-55变成3.1.1-54。。请问如何实现?
我自己试出来了……比较傻的办法,感谢二楼的给的启发!
Sub Change()
For i = 51 To 100
With ActiveDocument.Content.Find
.Text = "3.3.1-" & i
With .Replacement
.Text = "3.3.1-" & i - 1
End With
.Execute Replace:=wdReplaceAll
End With
Next
End Sub 展开
我自己试出来了……比较傻的办法,感谢二楼的给的启发!
Sub Change()
For i = 51 To 100
With ActiveDocument.Content.Find
.Text = "3.3.1-" & i
With .Replacement
.Text = "3.3.1-" & i - 1
End With
.Execute Replace:=wdReplaceAll
End With
Next
End Sub 展开
3个回答
2021-02-14 · 百度认证:上海萌格电子商务官方账号
风云格式助手
一家专注软件研发的互联网科技公司,继承了研发与市场团队在海外共享软件 10 余年技术积累和市场经验,旗下有风云PDF转换器,风云CAD转换器,风云压缩等专业办公软件,也研发各类数字创意类软件
向TA提问
关注
展开全部
在我们日常工作和日常学习中,有时候需要将一些Word 文件进行压缩,如何做到呢?我们可以使用[风云压缩]完成。一起来看下具体步骤吧!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
何必使用vba,如果编号是自动生成的,删除3.1.1-50后,后边的会自动更新。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub QY()
'
' 宏在 2014-4-24 由 QY
'
x = "3.1.1-51"
y = "3.1.1-50"
Selection.Find.ClearFormatting
For i = 1 To 50
With Selection.Find
.text = x
.Replacement.text = y
.Forward = True
End With
Selection.Find.Execute Replace:=wdReplaceOne
Selection.MoveRight Unit:=wdCharacter, Count:=1
y = x
x = "3.1.1-" & Val(Right(x, 2)) + 1
Next
End Sub
'
' 宏在 2014-4-24 由 QY
'
x = "3.1.1-51"
y = "3.1.1-50"
Selection.Find.ClearFormatting
For i = 1 To 50
With Selection.Find
.text = x
.Replacement.text = y
.Forward = True
End With
Selection.Find.Execute Replace:=wdReplaceOne
Selection.MoveRight Unit:=wdCharacter, Count:=1
y = x
x = "3.1.1-" & Val(Right(x, 2)) + 1
Next
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询