Buscar numero en rango de grupos

19/02/2009 - 20:51 por rodmac | Informe spam
saludos:

Tengo la siguiente situación:

Quisiera saber si un numero se encuentra definido en uno o varios rangos,
como ejemplo:

En la Hoja 1

rango

Grupo verde 150 - 400
Grupo rojo 111 (en este caso solo tiene un valor)
Grupo rojo 123 - 345
grupo rojo 678 - 900
Grupo azul 100 - 200
Grupo azul 200 - 500


En la Hoja 2

ID GRUPO VERDE GRUPO ROJO GRUPO AZUL
122 SI
145 SI SI
400 SI SI SI
399 SI SI

¿Que formula o proceso debo realizar para que me indique SI existe el ID en
ciertos rangos?

El problema es el tamaño, tengo mas de 2 mil ID´s y 100 grupos.

rodmac
 

Leer las respuestas

#1 AnSanVal
23/02/2009 - 20:46 | Informe spam
Si te he entendido bien, prueba con:

Sub Desglose()
Dim desde, hasta, fila, id As Long
Dim celda As Range
fila = 2
For Each celda In Sheets("Hoja1").Range("A5:A" _
& Sheets("Hoja1").Cells(60000, 1).End(xlUp).Row)
desde = celda.Offset(, 2).Value
hasta = celda.Offset(, 3).Value
If hasta = 0 Then hasta = desde
For id = desde To hasta
Sheets("Hoja2").Cells(fila, 1).Value = id
Sheets("Hoja2").Cells(fila, 2).Value = celda.Value
fila = fila + 1
Next id
Next celda
End Sub

Nota: Según tu ejemplo el ID "200 AZUL" está repetido.

Saludos desde Tenerife.
*************************************
"rodmac" escribió en el mensaje
news:
Gracias por tus comentarios Hector.

Te indico como estan los datos:
(Ya separe los rangos en las columnas C y D con la funcion de "TEXTO EN
COLUMNAS" de esta manera no hay problema si los grupos tiene uno o mas
digitos, estan con un valor de numero)

En la Hoja 1 a partir de la celda A4:

A B C D

4 GRUPO RANGO INICIO FINAL
5 VERDE 150 - 400 150 400
6 ROJO 111 111 (en este caso solo
tiene un valor)
7 ROJO 123 - 345 123 345
8 ROJO 678 - 900 678 900
9 AZUL 100 - 200 100 200
10 AZUL 200 - 500 200 500
...
100 MAGENTA 222-333 222 333

Saludos

Rod

Preguntas similares