Я знаю, что этот вопрос немного устарел, но есть кое-что, что вам нужно исправить, чтобы вы могли получить все значения из двух массивов.
Вам необходимо обновить счетчик во втором FOR, как вы это делали в первом.
В противном случае одно из значений из второго массива не будет присвоено.
Взять этот код в качестве примера:
''//Build the Arrays
Dim a,b,c
a=array("a1","a2") : b=array("b1","b2") : c=array_merge(a,b)
''//Run the code
For Each i In c
Response.Write i &"<br />"
Next
''//The main function
Function array_merge(arr1, arr2)
''//Declare all function variables
dim arr1_size,arr2_size,total_size,i,merged,counter
''//Fix empty or none arrays
if not isArray(arr1) then arr1 = Array(arr1) end if
if not isArray(arr2) then arr2 = Array(arr2) end if
''// Get and set the Arrays Size
arr1_size = ubound(arr1) : arr2_size = ubound(arr2)
total_size = arr1_size + arr2_size + 1
''//Create a temporary array and assign it a size
merged = array()
redim merged(total_size)
counter = 0
''//Create one single Array with the two others by looping them
For i = lbound(arr1) to ubound(arr1)
IF isobject(arr1(i)) then
set merged(counter) = arr1(i)
Else
merged(counter) = arr1(i)
End if
counter=counter+1
Next
For i = lbound(arr2) to ubound(arr2)
If isobject(arr2(i))then
set merged(counter) = arr2(i)
Else
merged(counter) = arr2(i)
End if
counter=counter+1
Next
''// Return the value
array_merge = merged
End Function