Te he preparado un ejemplo, ejecuta todo esto:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<html>
<head>
</head>
<body>
<%
Dim arr_Daysdonati(31)
Dim arr_Valuesdonati(1)
arr_Valuesdonati(0) = 15
arr_Valuesdonati(1) = 16
'EL ORDEN DE LOS VALORES ALTERA EL RESULTADO
'arr_Valuesdonati(0) = 16
'arr_Valuesdonati(1) = 15
for i=1 to 31
for a=0 to UBound(arr_Valuesdonati)
if i = arr_Valuesdonati(a) then
arr_Daysdonati(i) = arr_Valuesdonati(a)
' este es el sitio correcto
'Response.Write "<Font color=red>" & arr_Daysdonati(i) &"<br></Font>"
else
arr_Daysdonati(i) = 0
end if
' este es el sitio correcto
' Response.Write arr_Daysdonati(i)
next
' este es el sitio incorrecto
Response.Write arr_Daysdonati(i)
next
%>
<hr color="#CC0000" width="1200">
<table>
<tr>
<td>
<b>Cuando i=15</b> primero lo compara con el valor 15, como son iguales arr_Days(15)=15,<br>
despues compara con el valor 16, como son distintos arr_Days(15)=0.<br>
<b>FINALMENTE arr_Days(15)=0</b><br>
<b>Cuando i=16</b> no te ocurre lo mismo porque primero lo compara con el valor 15, como son distintos arr_Days(16)=0,<br>
despues compara con el valor 16, como son distintos arr_Days(16)=16<br>
<b>FINALMENTE arr_Days(16)=16</b><br>
<b> EL ORDEN DE LOS VALORES ALTERA EL RESULTADO<br>
arr_Valuesdonati(0) = 16<br>
arr_Valuesdonati(1) = 15<br>
00000000000000150000000000000000</b> <br>
</td></tr>
</table>
<hr color="#CC0000" width="1200">
<%
Dim arr_Days(31)
Dim arr_Values(1)
'VALORES BUSCADOS
arr_Values(0) = 15
arr_Values(1) = 16
'EL ORDEN DE LOS VALORES ALTERA EL RESULTADO
'arr_Values(0) = 16
'arr_Values(1) = 15
for i=1 to 31
Response.Write "HOY: " & i & "<BR>"
Response.Write "VARTYPE: " & VARTYPE(arr_Days(i)) & " VBEmpty 0 Uninitialized <BR>"
for a=0 to UBound(arr_Values)
Response.Write "<Font color=brown>VALOR BUSCADO: " & arr_Values(a) & "</font><BR>"
if i = arr_Values(a) then
Response.Write "<H3>ENCONTRADO</H3>"
Response.Write "<Font color=GREEN>ENTRA VARTYPE: " & VARTYPE(arr_Days(i)) & " VBEmpty 0 Uninitialized</Font><BR>"
arr_Days(i) = arr_Values(a) & "<BR>"
Response.Write "<Font color=BLUE>SALE: " & arr_Days(i) & "<BR>"
Response.Write "VARTYPE: " & VARTYPE(arr_Days(i)) & " VBString 8 String subtype </Font><BR>"
else
' reemplazar por 0 en caso que no concuerden los valores
arr_Days(i) = 0
Response.Write "<Font color=red>VARTYPE: " & VARTYPE(arr_Days(i)) & " VBInteger 2 Integer subtype <BR>"
Response.Write "SALE: " & arr_Days(i) & "</Font><BR>"
end if
next
' Response.Write arr_Days(i) & "<BR>"
next
%>
</body>
</html>