在Word 2010 VBA宏中的特定数量的符号后添加“ENTER”

时间:2014-01-08 12:52:51

标签: vba ms-word word-vba word-2010

所以我有格式数据:

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

我想让Word在|每5次出现后输入 (断行),以便构建和分离数据。

我无法找到一种简单快捷的方法。有什么想法吗?

1 个答案:

答案 0 :(得分: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