La funcion
ubound regresa el indice mayor del arreglo, no regresa el numero de elementos (como sucede en C, java, javascript, etc.)
por ejemplo
Código:
dim x(5)
response.write ubound(x)
te deberia imprimir 5. Esto significa que puedes acceder a los elementos con indice desde 0 hasta 5. O sea que el arreglo tiene 6 elementos