首页 > 解决方案 > VBA excel连接数组UDF的有效方法

问题描述

我想知道在将工作表中的范围与附加字符连接起来的最有效方法是什么,比如说逗号UDFVBA

我尝试了一些变化,但我总是遇到一个问题,即如何自动从工作表中选择的范围调整数组的大小。

波纹管代码有效,但我相信必须有更有效的方法来做到这一点。

请大家帮帮我好吗?

谢谢。

Function conc(data As Range) As String
Dim hola() As Variant
t = data.Rows.Count
ReDim hola(1 To t)

a = 1
For Each i In data.Value
hola(a) = i & ","
a = a + 1
Next i

conc = Join(hola)
Erase hola
End Function

标签: excelvbaperformance

解决方案


用于在一列和多行中连接多个字符串(这是您原来的设计目的):

Function vconc(data As Range) As String

    vconc = Join(Application.Transpose(data), Chr(44))

End Function

在一行中连接多列字符串:

Function hconc(data As Range) As String

    hconc = Join(Application.Transpose(Application.Transpose(data)), Chr(44))

End Function

推荐阅读