BUSCAR NÚMERO FALTANTE

03/01/2005 - 13:25 por Raúl Z. | Informe spam
Hola a todos:
Tengo un libro con varias hojas y el el rango "b5:b300" de cada hoja tengo
número que van desde el 1 al 2500, como hago para saber si me falta alguno de
esa serie?
Muchas Gracias

Raúl
 

Leer las respuestas

#1 KL
03/01/2005 - 17:55 | Informe spam
Raul,

Siguiendo la logica del hilo "Numeros Repetidos" el codigo de abajo deberia
hacer lo q buscas.

Tambien podrias usar la solucion de crear un hoja intermedia con formulas q
tambien figura en el hilo mencionado.

Finalmente, si q es posible hacerlo con una sola mega-formula matricial
(seleccionando el rango de 2500 celdas desde arriba hacia abajo, yendo a la
barra de formulas, pegando la formula y pulsando Ctrl+Shift+Enter):

=K.ESIMO.MAYOR((CONTAR.SI(INDIRECTO(CONCATENAR({"Hoja1!","Hoja2!","Hoja3!","Hoja4!","Hoja22!"};"$B$5:$B$300"));FILA(INDIRECTO("1:2500")))=0)*FILA(INDIRECTO("1:2500"));FILA(INDIRECTO("1:2500")))

pero haria falta un PC super potente para recalcularla ya q en mi PC (P4
1.8MHz, SDRAM 512MB) tarda 1 minuto y 10 segundos, y el tiempo crecera en
progresion geometrica segun vayas anadiendo hojas (de momento solo he metido
5).

Saludos,
KL

'Inicio Codigo-
Sub BuscarFaltantesEnVariasHojas()
Dim Hoja As Worksheet
Dim miRng As Range
Dim n As Integer
Dim Fila As Single
Dim Ocurrencias As Single

Application.ScreenUpdating=False
Fila = 2
With ActiveWorkbook.Worksheets("HojaSumar")
.Range("D1") = "Valores Faltantes"
.Range("D2:D2501") .ClearContents
End With

For n = 1 To 2500
Ocurrencias = 0
For Each Hoja In ActiveWorkbook.Worksheets
Select Case Hoja.Name
Case "HojaSumar", "Perez", "Sanchez" 'etc.
Case Else
'Establece el rango a evaluar para la hoja.
With Intersect(Hoja.Range("B:B"), Hoja.UsedRange)
Set miRng = .Offset(1, 0).Resize(.Rows.Count - 1)
End With
Ocurrencias = Ocurrencias + _
WorksheetFunction.CountIf(miRng, n)
End Select
Next Hoja
'Muestra los resultados
If Ocurrencias = 0 Then
ActiveWorkbook.Worksheets("HojaSumar").Cells(Fila, 4) = n
Fila = Fila + 1
End If
Next
End Sub
'Fin Codigo-



"Raul Z." wrote in message
news:
Hola a todos:
Tengo un libro con varias hojas y el el rango "b5:b300" de cada hoja tengo
numero que van desde el 1 al 2500, como hago para saber si me falta alguno
de
esa serie?
Muchas Gracias

Raul

Preguntas similares