我有一个用户定义的函数,如下所示,它允许我将两个不相邻的列组合成一个连续的数组。
Function MakeContig(ParamArray av() As Variant) As Variant
Dim avOut() As Variant
Dim i As Long
Dim j As Long
ReDim avOut(1 To av(0).Count, 0 To UBound(av))
For j = 0 To UBound(av)
For i = 1 To av(j).Rows.Count
avOut(i, j) = av(j)(i)
Next i
Next j
MakeContig = avOut
End Function
因此,如果我在单元格中键入“=makecontig(A1:A5,E1:E5)”,则会形成一个由公式中包含的两列组成的数组。我希望能够编辑此函数,以便它忽略一个充满错误的数组条目或任何类型的非数组条目。
例如,如果我输入“=makecontig(A1:A5,E1:E5, , )”或“=makecontig(A1:A5,Nothing,E1:E5)”或“=makecontig(A1:A5,E1:E5, C1:C5*#N/A)" 我希望它忽略错误或空白参数,只为 A1:A5 和 E1:E5 创建一个连续数组。
我想我需要在 UDF 的某处包含一个 If/Then 语句,但我似乎无法弄清楚如何正确执行它。
任何帮助,将不胜感激!