2017-07-21 41 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, " ", " ")