Tengo este problema a la hora de eliminar los elementos repetidos de un arreglo mediante esta funcion...
Código HTML:
<%
Arreglo2=Array(1,9,4,7,2,6,3,5,8)
Arreglo3=Array(9,4)
'Lleno el "Arreglox" con los datos de "Arreglo2" y "Arreglo3"
For h=LBound(Arreglo2) to UBound(Arreglo2)
redim preserve Arreglox(v)
Arreglox(v)=Arreglo2(h)
v=v+1
for p=LBound(Arreglo3) to UBound(Arreglo3)
redim preserve Arreglox(f)
Arreglox(f)=Arreglo3(p)
f=f+1
next
next
'A los datos de "Arreglox" les elimino los espacios en blanco que encuentre
for g=LBound(Arreglox) to UBound(Arreglox)
clavedocs=Arreglox(g)
clavedoc=Trim(clavedocs)
redim preserve Arreglo(gg) 'Una ves que he quitado los espacios en blanco, cada dato lo asigno a "Arreglo"
Arreglo(gg)=clavedoc
gg=gg+1
next
For i = LBound(Arreglo) To UBound(Arreglo)
ReDim Preserve TempArray(i) 'Redimensionamos el Arreglo temporal y preservamos el valor
TempArray(i) = Arreglo(i) 'Asignamos al array temporal el valor del otro arreglo
Next
'Verifica si hay elementos repetidos
For x=0 To UBound(Arreglo)
z=0
For y=0 To UBound(Arreglo)
If Arreglo(x) = TempArray(z) And y <> x Then 'Si el elemento del arreglo es igual al arreglo temporal
Arreglo(y) = "" 'Entonces Eliminamos el valor duplicado
Arreglo(x) = ""
End If
z=z+1
Next
Next
'Recorremos el array resultante
For Each Elemento In Arreglo
If Elemento <> "" Then 'Si el elemento es distinto de una cadena vacia, sea asigna el valor a "docs1"
redim preserve docs1(b)
docs1(b)=Elemento
b=b+1
end if
Next
%>
Arreglo 2: 1,9,4,7,2,6,3,5,8
Arreglo 3: 9,4
Arreglo: 9,4,1,9,4,7,2,6,3,5,8 (la union de los dos arreglos anteriores)
Arreglo Final: 1,7,2,6,3,5,8 (solo los elementos que NO se repiten)
Pero por alguna razón el resultado me lo muestra asi:
B]Arreglo 2:[/B] 1,9,4,7,2,6,3,5,8
Arreglo 3: 9,4
Arreglo: 1,4,1,9,4,7,2,6,3,5,8
Arreglo Final: 9,7,2,6,3,5,8
El problema esta en que a la hora de unir los dos arreglos, siempre toma Arreglo 3[0]=1 y no el valor 9 como en este ejemplo deberia tomar... creo que el detalle esta a la hora de unir los dos arreglos por que la eliminacion de los elementos repetidos la realiza bien... ¿¿No sé si me expliqué...??

Cabe mencionar que los elementos de Arreglo 3 deben ser forsozamente alguno(s) de los elementos del Arreglo 2...
Asi pues, espero entiendan el problema que se me presenta y de ser asi ayudarme a resolverlo... agradeceré cualquier idea y ayuda...
Saludos y gracias a todos....
como puedes identificar el problema?? anteponiendo en cada entrada de los FOR un "response.write" por cada elemento de los arreglos, esto con el fin de entender que datos esta manipulando en ese momento
):
)
aunque me cuesta entender su código lo he probado y funciona al 100%, que bueno que se haya tomado el tiempo de desarrollarlo...
todo codigo puede mejorarse, no es asi ciisteado?



