Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/06/2004, 02:21
DARK_OZMA
 
Fecha de Ingreso: enero-2004
Mensajes: 58
Antigüedad: 20 años, 3 meses
Puntos: 0
¿Como hariais este bucle? (for, while, if...)

Tengo 2 listas de nombres.
Para cada uno de la 1ª recorra la 2ª lista.
Si encuentra el mismo nombre, la variable "Encontrado" se incrementa y pasa al siguiente nombre de la lista 1.
Si no lo encuentra y llega al final de la lista 2, continua con el siguiente de la lista 1.

Ahora si que si:

For Index = 0 To (FilArchivos.ListCount - 1) 'Desde 0 hasta el nº de ficheros de carpeta FUENTE
FilArchivos.ListIndex = Index 'Coloco el puntero en el 1er fichero de lista1
Index2 = 0 'Reseteo el indice
FilOrigen.ListIndex = Index2 'Coloco el puntero en el 1er fichero de lista2
Encontrado = 0 'Reseteo la variable encontrado
While (Encontrado <> 1) And (Index2 < FilOrigen.ListCount) 'Mientras no encuentre el fichero y queden ficheros por comprobar en lista2
FilOrigen.ListIndex = Index2
If (FilArchivos.FileName <> FilOrigen.FileName) Then 'Si son nombres distintos, pasa al siguiente de lista2
Index2 = Index2 + 1
Else
Encontrado = Encontrado + 1
NumeroFich = NumeroFich + 1
End If
'If (NumeroFich = FilOrigen.ListCount) Then
' Index = FilArchivos.ListCount - 1
'End If
Wend
Next Index

Busco que si encuentra todos los ficheros en la 2ª lista, no siga buscando los restantes de la lista 1.

SALU2.

Última edición por DARK_OZMA; 15/06/2004 a las 03:40