我使用的是VSTO ThisAddIn和Word 2013。
我想用Find.Execute
替换一个字符串的所有出现,并使用自定义撤销消息标记此操作。代码是:
application.UndoRecord.StartCustomRecord("Some Message");
var find = application.ActiveDocument.Content.Find;
find.Execute("string to be replaced"
, ReplaceWith: "second string"
, Replace: WdReplace.wdReplaceAll);
application.EndCustomRecord();
所以我有一个Word崩溃在这段代码运行。如果我将Replace: WdReplace.wdReplaceAll
更改为Replace: WdReplace.wdReplaceOne
,我将有文字工作,但我需要替换所有出现的内容。
什么建议/解决方法吗?
当您有一个空的自定义撤销并执行替换全部时,Word会出现一些问题。我今天刚碰到这个问题。
这一页解释得很好。
选择- 替换一个,然后替换所有
- 解决方法是在替换所有文件之前对文档进行更改取消更改
- 删除自定义undo