用ActiveX替换Word文档中的文本?

时间:2009-04-20 13:31:23

标签: javascript ms-word activex replace

我想使用ActiveX和JavaScript替换Word文档中的一些字符串,现在我有这样的东西:

var text = Selection.Text;
Selection.Text = text.replace('somesting','somevalue');

但在那之后我放松了所有的形成。 如果我在WinWord中录制宏,我会得到这个:

With Selection.Find
    .Text = "somestring"
    .Replacement.Text = "somevalue"
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
End With
Selection.Find.Execute
Selection.Find.Execute Replace:=wdReplaceAll

那么,如何用JS重写最后一个字符串?

2 个答案:

答案 0 :(得分:1)

Selection.Find.Execute('somestring',
                       false,
                       false,
                       false,
                       false,
                       false,
                       wdFindContinue,
                       false,
                       false,
                       'somevalue'
                       wdReplaceAll,
                       false,
                       false,
                       false,
                       false);

你也应该有一些单词常量,例如:

var wdReplaceAll = 2;
var wdFindContinue = 1;

答案 1 :(得分:0)

如果文本少于256个字符,则效果很好。有关解决方法,请参阅文章ID:212543 http://support.microsoft.com/kb/212543

谢谢, 馒头