Disculpa, pero en ningún momento consideré si son repetidos o nó, se me pasó esa condición....
Agregá esto a tu rutina, buscando la línea que dice : 'comprobación . Las líneas negras ya están en la rutina original, pero todo lo que esté entre ellas debe ser reemplazado por estas. Si necesitas el libro te lo enviaré.
'comprobación
If Val(nro) <= lim And Val(nro) <> 0 Then
'controla si ya no está en la lista
If colres > 5 Then
y = 5
While y < colres
If Sheets("Hoja1").Cells(23, y) = Val(nro) Then
contr = 1
End If
y = y + 1
Wend
End If
If contr = 1 Then
contr = 0
Else
Sheets("Hoja1").Cells(23, colres) = nro
colres = colres + 1
i = i + 1
End If
End If
ind = 1
nro = ""
Aquí hay muchas variables que utilizan el formato del modelo, por eje que la lista devuelta esté en fila 23 a partir de col 5. Si modificas esto, tendrás que revisar cada variable para ajustarlas.
Saludos
Elsa
http://galeon.com/aplicaexcel