'↓合并字符串 'Rng:单元格区域 ,JoinStr:用什么符号连接文本 'WorksheetFunction.Transpose 工作表函数 将二维数组转一维 'VBA.Join 用于合并字符串(合并的一维数组,用什么连接) 'FunJoin 函数名 = 结果 【必须】 Function FunJoin(Rng As Range, JoinStr As String) Dim Arr Arr = WorksheetFunction.Transpose(Rng) '↓VBA.Join 可以理解为 将一维数组的内容连接起来 'arr 要连接的一维数组 'JoinStr 用什么字符来连接 FunJoin = VBA.Join(Arr, JoinStr) End Function
'↓分割字符串 'Rng 要分割单元格 选择单元格要绝对引用 'Rng2 要填充的单元格 取该单元格的行 有用处 'SplitStr 以什么字符分割 'vba.Split 字符串分割(要分割的字符串,以什么字符分割)返回一维数组 'FunSplit 函数名=结果 Function FunSplit(Rng As Range, Rng2 As Range, _ SplitStr As String) Dim Arr '↓字符串分割返回一维数组 ’rng :绝对引用的单元格 ' Splist 以什么字符分割 如、 Arr = VBA.Split(Rng, SplitStr) '↓返回arr一维数组中的第几个 '这里用分割单元格的下一行 减去 要分割的单元格(绝对引用)的行 '向下填充依次是 0 1 2 3 …… FunSplit = Arr(Rng2.Row - Rng.Row)'纵向填充 'FunSplit = Arr(Rng2.Column - Rng.Column) '横向填充 End Function
Function FunSplit(Rng As Range, Rng2 As Range, _ SplitStr As String) Dim Arr Arr = VBA.Split(Rng, SplitStr) '↓横向填充 FunSplit = Arr(Rng2.Column - Rng.Column) End Function
Function FunSplit(Rng As Range, Rng2 As Range, _ SplitStr As String) Dim Arr Arr = VBA.Split(Rng, SplitStr) If Rng.Row = Rng2.Row Then' '↓横向填充 FunSplit = Arr(Rng2.Column - Rng.Column) Else FunSplit = Arr(Rng2.Row - Rng.Row)'纵向填充 End If End Function
联系客服