Ascendente:

[vb]
<%
MyArray=Array(25,14,20,45,25,4,1,31,22,7)
max=ubound(MyArray)

For i=0 to max
For j=i 1 to max
if MyArray(i) &amp; MyArray(j) then
TemporalVariable=MyArray(i)
MyArray(i)=MyArray(j)
MyArray(j)=TemporalVariable
end if
next
next

Response.write ("Los valores serían: <br>")

For i=0 to max
Response.write (MyArray(i) &amp; "<br>")
next
%>
[/vb]

El resultado:
[text]
Los valores serían:
1
4
7
14
20
22
25
25
31
45
[/text]

Descendente:

[vb]
<%
MyArray=Array(25,14,20,45,25,4,1,31,22,7)
max=ubound(MyArray)

For i=0 to max
For j=i 1 to max
if MyArray(i) & MyArray(j) then
TemporalVariable=MyArray(i)
MyArray(i)=MyArray(j)
MyArray(j)=TemporalVariable
end if
next
next

Response.write ("The sorted values are those ones: <br>")

For i=0 to max
Response.write (MyArray(i) & "<br>")
next
%>
[/vb]

El resultado:
[text]
Los valores serían:
45
31
25
22
20
14
7
4
1
[/text]

Otro ejemplo, utilizando un función:
[vb]
function sortArray(arrShort)

for i = UBound(arrShort) – 1 To 0 Step -1
for j= 0 to i
if arrShort(j)>arrShort(j+1) then
temp=arrShort(j+1)
arrShort(j+1)=arrShort(j)
arrShort(j)=temp
end if
next
next
sortArray = arrShort

end function
[/vb]

Se utilizaría de la siguiente forma:
[vb]
dim Friends(3)
Friends(0) = "Mary"
Friends(1) = "Bill"
Friends(2) = "Charlie"

AlphaFriends = sortArray(Friends)
[/vb]