求救啊,在Excel里写vba代码去,作用是替换
vb吧
全部回复
仅看楼主
level 3
RangerJN 楼主
在Excel里用代码把word里的“123”替换成“456”。调试过程中无报警和异常,就是没效果,没替换成功,求大神指点。
2023年04月10日 13点04分 1
level 3
RangerJN 楼主
代码如下
Sub 按钮1_Click()
Dim myBool As Boolean
myBool = True
Set dakai = CreateObject("word.application")
dakai.Visible = True
Dim s As String
s = "*****************************************************************************"
Set myDoc = dakai.Documents.Open("C:\Users\Administrator\Desktop\test宏\test1.docx")
With myDoc.Content.Find
.ClearFormatting
.Text = "123"
.Replacement.ClearFormatting
.Replacement.Text = "456"
.Execute Replace:=wdReplaceAll, Forward:=True, _
Wrap:=wdFindContinue
End With
Debug.Print myDoc.Content.Text
Debug.Print s
myDoc.Save
myDoc.Close
dakai.Quit SaveChanges:=wdPromptToSaveChanges
End Sub
2023年04月10日 13点04分 2
你把wdReplaceAll换成2就行了。另外你这脚本是在excel里面写的,如果是在word里面写,不用修改这个,因为excel里面没有定义这个常量,所以默认就是没赋值是0,也就是不替换。原本这个常量的值是2,明白了吧。
2023年04月10日 19点04分
还有在word脚本编辑器里按F2,然后搜索wd可以看到所有常量。
2023年04月10日 19点04分
@网海飘叶🌿 好的,太感谢了,我去试试
2023年04月10日 22点04分
@网海飘叶🌿 感谢了,试了果然有效,这问题太隐蔽了。
2023年04月10日 23点04分
1