如何用VBA替换所有句子

时间:2017-07-21 17:25:17

标签: vba word-vba

我试图让代码删除额外的空间,这是我的代码

Sub ColourChange()
       For Each sentence In ActiveDocument.StoryRanges
                LArray = Split(sentence, " ")
                var = ""
                For Each Text In LArray
                    If Text <> "" Then
                        var = var + " " + Text
                    End If
                Next
        Next
End Sub

但是我尝试用新句子(var)替换当前的句子,这句话已经删除了额外的空格,但是它无法完成:(任何人都知道如何替换整个句子?

1 个答案:

答案 0 :(得分:1)

以下代码显示了如何用新的句子替换现有的句子。

Private Sub ColourChange()

    Dim OldSen As String, NewSen As String
    Dim SenRng As Range

    For Each SenRng In ActiveDocument.Sentences
        OldSen = SenRng.Text
        NewSen = "(((" & OldSen & ")))"
        SenRng.Text = NewSen
    Next SenRng
End Sub

请注意Sentence是一个范围,是Sentences集合的成员。

我不明白你想对这些空格做些什么,但如果你打算删除多余的空格,你可以考虑使用替换功能,比如, NewSen = Replace(OldSen, " ", " ")