2017-07-21 40 views
-1

荫试图使代码删除多余的空间,这里是我的代码如何使用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),以取代目前的句子,其已经删除多余的空间,但它不能这样做:(有人知道如何更换整个句子?

+0

哪里额外的空间?在一开始,在中间的某个地方,结束?你想要替换所有的空间吗? –

+0

'Trim $()'函数不能做你想要的吗? – braX

+0

'var = Trim $(var +“”+ Text)' – braX

回答

0

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

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, " ", " ")