Funcion SI con ams de 7 condiciones

11/10/2005 - 21:51 por marcelo | Informe spam
Por favor su ayuda, tengo 10 diferentes formulas que se deben aplicar 1
secuencialmente de la otra cada vez que si por ejemplo la 1era formula no
encuentra valores ·N/A o VALOR, debe aplciar la segunda, de igual forma
continuar con la tercera, cuarta, etc.

Como puedo hacerlo la funcion si solo me permite 7 condiciones existe alguna
forma???

podria ser en una macro ya que tengo 2000 filas en una columna aplico la
1era formula, luego ordeno, y si son valores N/A o VALOR?, copio la 2, luego
ordeno, luego en N/A o VALOR?, copio la 3 y asi sucesivamente hasta la decima.

Gracias

Preguntas similare

Leer las respuestas

#6 KL
13/10/2005 - 10:32 | Informe spam
Hola Marcelo,

Tal como te comentaba...

Paso 1: Crea una formula denominada

menu Insertar>Nombre>Definir..
nombre: TXT
se refiere a:
={"*???COMGIRO*"\"*???GIRO*"\"*??????TRRCQ*"\"*??????OPTQ*"\"*COBRANZAS*"\"*?????????000A*"\"*A-FTS*"\"*A-*"}

Paso 2: En la celda [N3] introduce la siguiente formula MATRICIAL (se
confirma mediante las teclas Ctrl+Shift+Enter, no solo Enter) y copiala
hacia abajo:

=ELEGIR(1+SI(SUMAPRODUCTO(CONTAR.SI(O3;TXT));COINCIDIR(1;CONTAR.SI(O3;TXT);0));EXTRAE(O3;1;7);EXTRAE(O3;ENCONTRAR("COMGIRO";O3)-3;16);EXTRAE(O3;ENCONTRAR("GIRO";O3)-3;16);EXTRAE(O3;ENCONTRAR("TRRCQ";O3)-6;LARGO(O3)-1-ENCONTRAR("TRRCQ";O3));EXTRAE(O3;ENCONTRAR("OPTQ";O3)-6;LARGO(O3)-1-ENCONTRAR("OPTQ";O3));EXTRAE(O3;ENCONTRAR("COBRANZAS";O3);17);EXTRAE(O3;ENCONTRAR("000A";O3)-9;13);EXTRAE(O3;ENCONTRAR("A-FTS";O3)+2;LARGO(O3)-1-ENCONTRAR("A-FTS";O3));SI(ESERROR(--(EXTRAE(O3;ENCONTRAR("A-";O3)+2;LARGO(O3)-1-ENCONTRAR("A-";O3))));EXTRAE(O3;ENCONTRAR("A-";O3)+2;LARGO(O3)-1-ENCONTRAR("A-";O3));--(EXTRAE(O3;ENCONTRAR("A-";O3)+2;LARGO(O3)-1-ENCONTRAR("A-";O3)))))

Si los datos estan en la columna [M], cambia O3 por M3 dentro de la formula.

Saludos,
KL



"marcelo" wrote in message
news:
No son secretas, ahi les va, tengo la columna M con una cadena de texto,
en
la columna N, empiezo colocando la formula
=ESPACIOS(EXTRAE(O3;ENCONTRAR("COMGIRO";O3)-3;16)), si el resultado de
esta
formula son NN/A O VALOR, copi la segunda formula
=ESPACIOS(EXTRAE(O4;ENCONTRAR("GIRO";O4)-3;16)) de igual forma sigo con la
3,
4 5
tercera:
=ESPACIOS(EXTRAE(O5;ENCONTRAR("TRRCQ";O5)-6;LARGO(O5)-1-ENCONTRAR("TRRCQ";O5)))
Cuarta.
=ESPACIOS(EXTRAE(O6;ENCONTRAR("OPTQ";O6)-6;LARGO(O6)-1-ENCONTRAR("OPTQ";O6)))
Quinta: =ESPACIOS(EXTRAE(O7;ENCONTRAR("COBRANZAS";O7);17))
Sexta: =ESPACIOS(EXTRAE(O8;ENCONTRAR("000A";O8)-9;13))
Septima:
=ESPACIOS(EXTRAE(O9;ENCONTRAR("A-FTS";O9)+2;LARGO(O9)-1-ENCONTRAR("A-FTS";O9)))
Octava:
=ESPACIOS(VALOR(EXTRAE(O10;ENCONTRAR("A-";O10)+2;LARGO(O10)-1-ENCONTRAR("A-";O10))))
Novena:
=ESPACIOS(EXTRAE(O11;ENCONTRAR("A-";O11)+2;LARGO(O11)-1-ENCONTRAR("A-";O11)))
Decima: =EXTRAE(O12;1;7)

Se deben aplicar en ese orden, y siempre me resulta un poco mas rapido
aplicar la formula, ordenar y luego seguir reemplazando por la siguiente.

si me pueden ayudar con una formula que contenga todos estas formulas les
agradeceria.




"KL" escribio:

Hola Marcelo,

Creo que ya es hora de exponer aqui la 10 formulas secretas, no te
parece?

Saludos,
KL


"marcelo" wrote in message
news:
> Gracias Hector, en si las formulas extraen cadenas de texto de otras
> mas
> grandes, las que sirven de referencias para luego hacer un cruce por
> referencias, siendo asi, por ejemplo la primera formula extrae los 5
> primeros
> caracteres, si resulta un #N/A o VALOR??, debo copiar la segunda
> formula
> que
> extrae los 10 ultimos y de igual forma sucesivamente ahsta una formula
> 10
> que
> extrae otros caracteres. Siempre seran resultados en texto por lo que
> necesariamente debe usarse la funcion SI.
>
>
> "Hector Miguel" escribio:
>
>> hola, marcelo !
>>
>> > ... tengo 10 diferentes formulas que se deben aplicar 1
>> > secuencialmente
>> > de la otra
>> > ... por ejemplo la 1era formula no encuentra valores N/A o VALOR,
>> > debe
>> > aplciar la segunda>
>> > ... igual... continuar con la tercera, cuarta, etc.
>> > Como puedo hacerlo la funcion si solo me permite 7 condiciones
>> > existe
>> > alguna forma?
>>
>> cuando se vuelve 'necesario' ANIDAR 'demasiadas[?]' funciones SI
>> condicionales...
>> [yo creo que] 'es tiempo' de pensar en alguna forma 'diferente' de
>> validar resultados 'condicionados' [p.e.]
>> -o- si las 'condiciones a evaluar' son valores consecutivos
>> [1,2,3,4,5,6,etc.] => 'a partir de' 1, Y NO CERO <= ...
>> resulta mas 'conveniente' la funcion
>> =Elegir(Resultado_de_la_condicion,Alternativa_1,Alternativa_2[,Alternativa_x])
>> -o- si las 'condiciones a evaluar' son resultados de
>> 'expresiones-valor'
>> ...
>> podrias sumar [solamente] 'aquellos' valores cuyas condiciones
>> 'se
>> cumplen' [p.e.]
>>
>> =(Condicion=Valor1)*Resultado1+(Condicion=Valor2)*Resultado2+(Condicion=Valor3)*Resultado3[+(Condicion..]
>> -o- si las 'condiciones a evaluar' son resultados de
>> 'expresiones-texto'
>> ...
>> [aqui 'NO queda otra' que... usar varias funciones Si
>> condicionales
>> :(( 'aunque'...]
>> podrias 'romper' en condiciones 'parciales' [usando celdas
>> distintas y/o nombres] y 'dejar' la que se cumpla :))
>> [p.e.]
>> =Si(Condicion_parcial_1,Condicion_parcial_1,Buscar_otra_condicion)
>> |____con datos mas 'concretos', apareceran soluciones mas
>> 'concretas'.__|
>>
>> saludos,
>> hector.
>>
>>
>>



Respuesta Responder a este mensaje
#7 marcelo
14/10/2005 - 22:55 | Informe spam
Funciono!, perfectamente!!

Gracias KL, sos lo máximo


"KL" escribió:

Hola Marcelo,

Tal como te comentaba...

Paso 1: Crea una formula denominada

menu Insertar>Nombre>Definir..
nombre: TXT
se refiere a:
={"*???COMGIRO*"\"*???GIRO*"\"*??????TRRCQ*"\"*??????OPTQ*"\"*COBRANZAS*"\"*?????????000A*"\"*A-FTS*"\"*A-*"}

Paso 2: En la celda [N3] introduce la siguiente formula MATRICIAL (se
confirma mediante las teclas Ctrl+Shift+Enter, no solo Enter) y copiala
hacia abajo:

=ELEGIR(1+SI(SUMAPRODUCTO(CONTAR.SI(O3;TXT));COINCIDIR(1;CONTAR.SI(O3;TXT);0));EXTRAE(O3;1;7);EXTRAE(O3;ENCONTRAR("COMGIRO";O3)-3;16);EXTRAE(O3;ENCONTRAR("GIRO";O3)-3;16);EXTRAE(O3;ENCONTRAR("TRRCQ";O3)-6;LARGO(O3)-1-ENCONTRAR("TRRCQ";O3));EXTRAE(O3;ENCONTRAR("OPTQ";O3)-6;LARGO(O3)-1-ENCONTRAR("OPTQ";O3));EXTRAE(O3;ENCONTRAR("COBRANZAS";O3);17);EXTRAE(O3;ENCONTRAR("000A";O3)-9;13);EXTRAE(O3;ENCONTRAR("A-FTS";O3)+2;LARGO(O3)-1-ENCONTRAR("A-FTS";O3));SI(ESERROR(--(EXTRAE(O3;ENCONTRAR("A-";O3)+2;LARGO(O3)-1-ENCONTRAR("A-";O3))));EXTRAE(O3;ENCONTRAR("A-";O3)+2;LARGO(O3)-1-ENCONTRAR("A-";O3));--(EXTRAE(O3;ENCONTRAR("A-";O3)+2;LARGO(O3)-1-ENCONTRAR("A-";O3)))))

Si los datos estan en la columna [M], cambia O3 por M3 dentro de la formula.

Saludos,
KL



"marcelo" wrote in message
news:
> No son secretas, ahi les va, tengo la columna M con una cadena de texto,
> en
> la columna N, empiezo colocando la formula
> =ESPACIOS(EXTRAE(O3;ENCONTRAR("COMGIRO";O3)-3;16)), si el resultado de
> esta
> formula son NN/A O VALOR, copi la segunda formula
> =ESPACIOS(EXTRAE(O4;ENCONTRAR("GIRO";O4)-3;16)) de igual forma sigo con la
> 3,
> 4 5
> tercera:
> =ESPACIOS(EXTRAE(O5;ENCONTRAR("TRRCQ";O5)-6;LARGO(O5)-1-ENCONTRAR("TRRCQ";O5)))
> Cuarta.
> =ESPACIOS(EXTRAE(O6;ENCONTRAR("OPTQ";O6)-6;LARGO(O6)-1-ENCONTRAR("OPTQ";O6)))
> Quinta: =ESPACIOS(EXTRAE(O7;ENCONTRAR("COBRANZAS";O7);17))
> Sexta: =ESPACIOS(EXTRAE(O8;ENCONTRAR("000A";O8)-9;13))
> Septima:
> =ESPACIOS(EXTRAE(O9;ENCONTRAR("A-FTS";O9)+2;LARGO(O9)-1-ENCONTRAR("A-FTS";O9)))
> Octava:
> =ESPACIOS(VALOR(EXTRAE(O10;ENCONTRAR("A-";O10)+2;LARGO(O10)-1-ENCONTRAR("A-";O10))))
> Novena:
> =ESPACIOS(EXTRAE(O11;ENCONTRAR("A-";O11)+2;LARGO(O11)-1-ENCONTRAR("A-";O11)))
> Decima: =EXTRAE(O12;1;7)
>
> Se deben aplicar en ese orden, y siempre me resulta un poco mas rapido
> aplicar la formula, ordenar y luego seguir reemplazando por la siguiente.
>
> si me pueden ayudar con una formula que contenga todos estas formulas les
> agradeceria.
>
>
>
>
> "KL" escribio:
>
>> Hola Marcelo,
>>
>> Creo que ya es hora de exponer aqui la 10 formulas secretas, no te
>> parece?
>>
>> Saludos,
>> KL
>>
>>
>> "marcelo" wrote in message
>> news:
>> > Gracias Hector, en si las formulas extraen cadenas de texto de otras
>> > mas
>> > grandes, las que sirven de referencias para luego hacer un cruce por
>> > referencias, siendo asi, por ejemplo la primera formula extrae los 5
>> > primeros
>> > caracteres, si resulta un #N/A o VALOR??, debo copiar la segunda
>> > formula
>> > que
>> > extrae los 10 ultimos y de igual forma sucesivamente ahsta una formula
>> > 10
>> > que
>> > extrae otros caracteres. Siempre seran resultados en texto por lo que
>> > necesariamente debe usarse la funcion SI.
>> >
>> >
>> > "Hector Miguel" escribio:
>> >
>> >> hola, marcelo !
>> >>
>> >> > ... tengo 10 diferentes formulas que se deben aplicar 1
>> >> > secuencialmente
>> >> > de la otra
>> >> > ... por ejemplo la 1era formula no encuentra valores N/A o VALOR,
>> >> > debe
>> >> > aplciar la segunda>
>> >> > ... igual... continuar con la tercera, cuarta, etc.
>> >> > Como puedo hacerlo la funcion si solo me permite 7 condiciones
>> >> > existe
>> >> > alguna forma?
>> >>
>> >> cuando se vuelve 'necesario' ANIDAR 'demasiadas[?]' funciones SI
>> >> condicionales...
>> >> [yo creo que] 'es tiempo' de pensar en alguna forma 'diferente' de
>> >> validar resultados 'condicionados' [p.e.]
>> >> -o- si las 'condiciones a evaluar' son valores consecutivos
>> >> [1,2,3,4,5,6,etc.] => 'a partir de' 1, Y NO CERO <= ...
>> >> resulta mas 'conveniente' la funcion
>> >> =Elegir(Resultado_de_la_condicion,Alternativa_1,Alternativa_2[,Alternativa_x])
>> >> -o- si las 'condiciones a evaluar' son resultados de
>> >> 'expresiones-valor'
>> >> ...
>> >> podrias sumar [solamente] 'aquellos' valores cuyas condiciones
>> >> 'se
>> >> cumplen' [p.e.]
>> >>
>> >> =(Condicion=Valor1)*Resultado1+(Condicion=Valor2)*Resultado2+(Condicion=Valor3)*Resultado3[+(Condicion..]
>> >> -o- si las 'condiciones a evaluar' son resultados de
>> >> 'expresiones-texto'
>> >> ...
>> >> [aqui 'NO queda otra' que... usar varias funciones Si
>> >> condicionales
>> >> :(( 'aunque'...]
>> >> podrias 'romper' en condiciones 'parciales' [usando celdas
>> >> distintas y/o nombres] y 'dejar' la que se cumpla :))
>> >> [p.e.]
>> >> =Si(Condicion_parcial_1,Condicion_parcial_1,Buscar_otra_condicion)
>> >> |____con datos mas 'concretos', apareceran soluciones mas
>> >> 'concretas'.__|
>> >>
>> >> saludos,
>> >> hector.
>> >>
>> >>
>> >>
>>
>>
>>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida