Hecto MIguel

30/11/2005 - 20:03 por BLACIO | Informe spam
Gracias por Tú atención,

=--extrae(a1,coincidir(falso,eserror(--extrae(a1,fila($1:$25),1)),0),25-suma(--eserror(1*extrae(a1,fila($1:$25),1))))

con la formula anterior me da un error,

Te comento más datos, la información esta desde la fila F3 hasta la fila
F909 (La primera etapa de los 104 mil)
Te doy dos ejemplos, que en si son de los domicilios de los beneficiados
(ZEMPOALA No 5 COL. TRES MARIAS CP. 62515 CIUDAD HUITZILAC
MORELOS) y (
CIUDAD DE LA MONEDA 218 COL. CARRETAS C P 76400 CIUDAD QUERETARO)
donde el CP (Codigo Postal), requiero extraer los 5 números a la derecha.
ojala puedas auxiliarme.

Nuevamente gracias...
 

Leer las respuestas

#1 Héctor Miguel
30/11/2005 - 22:13 | Informe spam
hola, BLACIO !

=--extrae(a1,coincidir(falso,eserror(--extrae(a1,fila($1:$25),1)),0),25-suma(--eserror(1*extrae(a1,fila($1:$25),1))))
con la formula anterior me da un error,
... mas datos, la informacion esta desde la fila F3 hasta la fila F909 (La primera etapa de los 104 mil)
... ejemplos, que en si son de los domicilios de los beneficiados
(ZEMPOALA No 5 COL. TRES MARIAS CP. 62515 CIUDAD HUITZILAC MORELOS)
(CIUDAD DE LA MONEDA 218 COL. CARRETAS C P 76400 CIUDAD QUERETARO)
... el CP (Codigo Postal), requiero extraer los 5 numeros a la derecha...



1) la formula propuesta en el mensaje anterior... da error porque 'extrae' ->a partir del primer caracter numerico<-
y -preciamente- tal como te comentaba en el mismo...
-> "> si tienes una sola secuencia numerica, y no sabes 'exactamente' donde se encuentra [inicio/medio/final]..."
y en los ejemplos expuestos ahora, existe [al menos] la posibilidad de 'otras' cadenas numericas :(

2) lograr 'una sola formula' para extraer la cadena numerica 'correspondiente' al CP... reultaria mas que 'extensa' :))
[ademas de que seguramente excederia el limite de funciones 'anidadas' en una formula] :-(

3) suponiendo que el CP es siempre ->la ultima cadena numerica<- en el texto donde se busca [p.e. en 'A2']
a) una celda/columna 'puente/provisional/intermedia' [p.e. 'B2'] para encontrar la expresion "CP" [o solo algunas 'variantes']
b) en la celda/columna adyacente [p.e. 'C2'] la formula propuesta anterior pero... 'modificada' :))
-> una formula 'norma' [NO matricial] p.e. en 'B2'
=max(si(esnumero(hallar({"c p "\"cp. "\"c.p. "},a2)),hallar({"c p "\"cp. "\"c.p. "},a2),0))
-> la formula ->matricial<- modificada p.e. en 'C2'
=--extrae(a2,100-suma(--eserror(--extrae(a2,fila(indirecto(b2&":100")),1))),coincidir(falso,eserror(--extrae(a2,fila(indirecto(b2&":100")),1)),0))

4) toma nota que algunas 'combinaciones' para la abreviacion utilizada de 'codigo postal'... causaran 'errores' :-((
-> observa puntos y espacios...
validas: "c p " - "c p. " - "cp. " - "c.p. "
fallan: "cp " - "c. p. "

5) de todas maneras considera que usar +/- 104 MIL formulas matriciales... <\°|°/>
[a menos que posteriormente copies/pegues ->solo valores<-] ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Preguntas similares