Analizar rango (fila a fila) y obtener unos calculos en unas celdas,,,,

29/07/2004 - 20:56 por lamarse | Informe spam
Buenas tardes/días/noches señores.
Tengo una consultilla en Excel, que, por mucho que miro y miro por los
foros, no alcanzo a ver la solución (o no se verlo). Por lo que veo
creo que para algunos de vosotros será de fácil resolver y así
contribuiremos a la correcta evolución del cometido de las NEWS.

Bueno, a ver si soy capaz de explicarlo bien y se entiende a la
primera.
De entrada pongo la tabla en si a la cual me refiero.

A B C D
01 [ ][ fechaI ][ fechaE ][ fechaE+1]
02 [ 1 ][ ][ ][ ]
03 [ 2 ][ 12-jul ][ 14-jul ][ 15-jul ]
04 [ 3 ][ ][ ][ ]
05 [ 4 ][ ][ ][ ]
06 [ 5 ][ ][ ][ ]
07 [ 6 ][ ][ ][ ]
08 [ 7 ][ 18-jul ][ 19-jul ][ 20-jul ]
09 [ ][ ][ ][ ]
10 [ ][ fecha ]
11 [ 1 ][ 1 ]
12 [ 2 ][ 1 ]
13 [ 3 ][ 1 ]
14 [ 4 ][ 2 ]
15 [ 5 ][ ]
16 [ 6 ][ ]
17 [ 7 ][ 1 ]
18 [ 8 ][ 1 ]
19 [ 9 ][ 2 ]
20 [ 10 ][ ]


Esta tabla esta divida en 2 partes. 1 es donde están los datos
(dinámicos) y la otra es donde quiero aplicar alguna formula o VBA
para obtener los resultados según la primera parte.
1ª Parte = el RANGO B2:D8
2ª Parte = el RANGO B11:C20

Cómo poder hacer que se analice todo el RANGO B2:B8 (fila por fila) y
empezando por la fila 2 (en B2), que me realice estos cálculos:

if B11² then C11=1 else
if B11>B2 & B11=<C2 then C11=1 else
if B11Ò then C11=2

que, como podéis ver, me deja un resultado en C11 (bueno, el resultado
que hay es el que se obtiene al revisar la fila B3, no la B2 que en si
no daría nada). De ahí que pase a B3 y así hasta finalizar el RANGO
B2:B8. Al terminar el RANGO B2:B8 simplemente pasa a la siguiente fila
de la 2ªParte y los cálculos pasan a ser:

if B12² then C12=1 else
if B12>B2 & B12=<C2 then C12=1 else
if B12Ò then C12=2

Las fechas que hay en el rango B2:D8 nunca se van a repetir, así que
haciendo todo el análisis, aunque encuentre la respuesta en la primera
fila, el chequeo de las siguientes nunca debe sobre escribir el
resultado obtenido en la primera (vamos, que si una vez encontrado el
resultado en la fila X, como que ya podría prescindir de revisarse las
siguientes filas).

La tabla ya representa (la 2ªParte) los resultados que se tendrían que
obtener según mis necesidades. Creo no haberme equivocado en la
expresión de los cálculos, pero en si los resultados han de ser los
que se ven.

Gracias por adelantado
Si cualquier cosa no se entiende, preguntar.

Víctor.
 

Leer las respuestas

#1 Héctor Miguel
30/07/2004 - 07:55 | Informe spam
hola, victor !

... a ver si soy capaz de explicarlo bien y se entiende a la primera [...]
... Si cualquier cosa no se entiende, preguntar.



[segun entiendo yo...]
=> la tabla1 corresponde al rango A2:D8 [en donde...]
[A] contiene... [¿algun numero 'de control'????] o... ¿NO 'importa' que contenga???
[B] contiene... una fecha_I [p.e. B3->12-jul
[C] contiene... una fecha_E [p.e. C3->14-jul
[D] contiene... la fecha_E+1 [p.e. D3->15-jul
=> la tabla2 corresponde al rango A11:C20 [en donde...]
[A] contiene... [¿debiera 'suponerse' que el mismo numero 'de control'???] o... ¿tampoco 'importa'???
[B] contiene... =>NO lo 'ejemplificas' :(( aunque -supongo que-... 'debiera ser'... una fecha_X ???<[C] <=> es aqui donde se requiere un 'resultado'... que NO esta 'claro' [para mi] por lo siguiente...

1°- ¿tiene alguna 'relacion' el dato en la columna 'A' de ambas tablas? o... NO es 'importante' ???
2°- ¿tiene alguna 'implicacion' el hecho de que ambas tablas sean de 'diferentes dimensiones'???
tabla1 es de 7 filas y... tabla2 es de 10 filas [???]
3°- ¿es 'necesario' que CADA 'B' [2ª tabla] sea 'verificada' DESDE LA PRIMER FILA [de la 1ª tabla]???
o... ¿solamente a partir de 'su correspondiente posicion' dentro de la 2ª tabla ???
o... ¿es solamente 'fila_posicion_tabla2' 'versus' [misma] 'fila_posicion_tabla1' ???
4°- [como yo lo veo...] existen [al menos] 6 posibilidades al buscar 'el dato' [de una tabla en otra]...
a) que se encuentre en 'B' o 'C' de tabla1 [misma 'fila_posicion_tablas']
b) que se encuentre en 'D' de tabla1 [misma 'fila_posicion_tablas']
c) que NO se encuentre [misma 'fila_posicion_tablas']
d) que se encuentre en 'B' o 'C'... pero en una 'fila_posicion' =>distinta<= 'entre' ambas tablas
e) que se encuentre en 'D'... pero en una 'fila_posicion' =>distinta<= 'entre' ambas tablas
f) que NO se encuentre [NI siquiera] en otra 'fila_posicion_tablas'
=>¿que 'resultado' se debiera 'poner', segun la 'variante_[no]_encontrada' ???

todo este 'rollo'... [me ha sido 'originado'] por tus comentarios en el sentido de...
'... que se analice todo el RANGO B2:B8 (fila por fila) ...'
'... aunque encuentre la respuesta en la primera fila, el chequeo de las siguientes ...'



=>el penultimo parrafo [me] resulta [particularmente] 'confuso'<= :( [probablemente...]
debido a que NO 'ejemplificaste' [adecuadamente] el contenido de 'B' en la 2ª tabla [???]

¿comentas datos adicionales?
saludos,
hector.

Preguntas similares