[MS V8i vba] 某文字索检案例运行结果看不到

这个小程序应该在当前文件中每一个选中的文字中,替换掉索检到的部分,但不知道为什么看不到运行结果(是我操作、理解错了?)。

这个案例是《学习MS vba》中第7章第16个例子。

我把命令行发上来,请各位大神帮我解答下疑惑。

Sub TextWork16()
Dim TextElem As TextElement
Dim MyMod As ModelReference
Set MyMod = Application.ActiveModelReference
Dim MyElems As ElementEnumerator
Set MyElems = MyMod.GetSelectedElements
Dim MyElem As Element
While MyElems.MoveNext
Set MyElem = MyElems.Current
Select Case MyElem.Type
Case msdElementTypeText
Set TextElem = MyElem
If InStr(1, TextElem.Text, "[BY]") > 0 Then
TextElem.Text = Replace(TextElem.Text, "[BY]", "hhpdi")
TextElem.Rewrite
End If
End Select
Wend
End Sub

Parents
  • 这段代码我测试没有问题呀。推测应该是您测试的问题。

    请注意:①要替换的文字必须在当前模型中!!!②你需要首先用选择集选中要替换的所有文字串;③文字串中当然要含有[BY]这样的字符子串喽

    【另外】请仔细读我们的发帖规则,插入代码时要用Insert Code功能,这样能支持代码的缩进,容易读一些。



    Answer Verified By: 熊浩然 

Reply
  • 这段代码我测试没有问题呀。推测应该是您测试的问题。

    请注意:①要替换的文字必须在当前模型中!!!②你需要首先用选择集选中要替换的所有文字串;③文字串中当然要含有[BY]这样的字符子串喽

    【另外】请仔细读我们的发帖规则,插入代码时要用Insert Code功能,这样能支持代码的缩进,容易读一些。



    Answer Verified By: 熊浩然 

Children