VBA如何将一个数组赋值给另一个数组,下列代码该如何修改
Sub sx()
Dim arr(), arr1(), arr2(), r%, i%, n%, sr$, st$, rng As Range, rngs As Range
Set rng = Sheets("HZ").[a2].Resize(Sheets("HZ").[a2].End(xlDown).Row - 1, 27)
arr() = rng
For i = 1 To UBound(arr())
ReDim Preserve arr1(1 To i)
n = n + 1
arr1(n) = Join(Application.Transpose(Application.Transpose(arr(i))))
Next
End Sub
Sub sx()
Dim arr(), arr1(), arr2(), r%, i%, n%, sr$, st$, rng As Range, rngs As Range
Set rng = Sheets("HZ").[a2].Resize(Sheets("HZ").[a2].End(xlDown).Row - 1, 27)
arr = rng
For i = 1 To UBound(arr)
ReDim Preserve arr1(1 To i)
n = n + 1
sr = ""
For j = 1 To UBound(arr, 2)
sr = sr & arr(i, j)
Next j
arr1(n) = sr
Next
'至此arr1数组赋值完毕,下面看看arr1中的数据
For i = 1 To UBound(arr)
MsgBox "arr1(" & i & ") 的值是:" & arr1(i)
Next
End Sub
----------------------------------------------------------
你的代码运行到
arr1(n) = Join(Application.Transpose(Application.Transpose(arr(i))))
这一句时,出现错误,原因是Join函数只对一维数组管用,而数组:arr是二维数组。
上一篇:vbs整人代码怎么打开