2014-01-08 220 views
1
所以我有格式的數據

一定數目的符號後:添加「ENTER」鍵在Word 2010中VBA宏

data1|data2|data3|data4|data5|data6|...

我希望Word把進入(斷線)後,每5發生|爲了結構和分離數據。

我找不到一個簡單快捷的方法來做到這一點。有任何想法嗎?

回答

0

使用內置的Split函數並使用vbCrLf常量重新生成數據字符串以添加換行符。

請注意,Split函數將刪除分隔符,因此如果您在輸出中需要它,則必須在將For循環中的字符串添加時將其添加回去。

類似以下內容可以工作:

Option Explicit 

Sub GroupDataStringByFive() 
    Dim sIn As String 
    Dim sOut As String 
    Dim sArr() As String 
    Dim iForCounter As Integer 

    sIn = "data1|data2|data3|data4|data5|data6" 

    sArr = Split(sIn, "|") 

    If IsArray(sArr) Then 
     For iForCounter = 0 To UBound(sArr) 
      If iForCounter > 0 And iForCounter Mod 5 = 0 Then 
       sOut = sOut & vbCrLf & sArr(iForCounter) 
      Else 
       sOut = sOut & sArr(iForCounter) 
      End If 
     Next iForCounter 
    End If 

    MsgBox sOut 
End Sub 
+0

完美。必須調整它從MSgBox切換到更有用的東西,但除此之外 - 100%完美。我非常感謝你的幫助:) – user3173321

+0

不客氣!我總是認爲MsgBox命令是有用的......;) –