Saltar al contenido

Extraer número con su porcentaje (si hay)de cadena

publicado

Hola a todos!

Estoy tratando de extraer lo siguiente:

 

2% con dscto

5% + bonif

5 con dscto

Necesito solo extraer el porcentaje. He intentado con algunas fórmulas pero terminan por extraer solo el número, y quisiera saber como extraer el número con porcentaje y en el caso del número solo el número por favor.! Mil gracias

Featured Replies

publicado
  • Autor
Ahora mismo, Silvia dijo:

Hola Perssefones

y que hay de la formula que te pasé el otro día??

 

saludos,

Silvia

Silvia, tuve un pequeño problema tratando de sustraer también los otros números y en la celda en rojo no pude sustraer el %

Buscar simbolos.xlsx

publicado

Es que en tus ejemplos todos comienzan con

Hace 11 horas, Perssefones dijo:

2% con dscto

5% + bonif

5 con dscto

ahora en tu nuevo ejemplo muestras

Cita

  

De 100 a 200 tuberías =  3.6% tuberias

?

publicado

En el caso que muestras en rojo, lo que pasa es que aquí

De 100 a 200 tuberías =  3.6% tuberias

Después del igual hay dos espacios en blanco..  

puedes corregir con lo siguiente

=ESPACIOS(IZQUIERDA(SUSTITUIR(EXTRAE(ESPACIOS(B12),BUSCAR(100,HALLAR($I$2:$I$7,B12))+2,100)," ",REPETIR(" ",100)),70))

sin embargo, y para todos los otros casos y ya que Big  está por aquí, quizás una macro te resulte mas fácil...

 

?

publicado

Si al inicio  son palabras específicas como :  Por, cada, De.. de..  

esto te puede servir

=ESPACIOS(IZQUIERDA(SUSTITUIR(ESPACIOS(SUSTITUIR(SUSTITUIR(SUSTITUIR(MINUSC(B4),"por",""),"cada",""),"de",""))," ",REPETIR(" ",100)),50))

mi separador de argumentos es la coma, si el tuyo es otro, corrige

 

saludos,

 

publicado

Es complicado hacerlo con formulas cuando puedes tener infinidad de opciones!!!, con un macro tal vez pudiera ser más fácil, sin embargo dejo una combinación de ambas formulas que cubre todas las opciones mostradas hasta ahora

=SI.ERROR(SI(HALLAR("%";IZQUIERDA(B12;HALLAR(" ";B12)-1);1);IZQUIERDA(B12;HALLAR(" ";B12)-1);0);ESPACIOS(IZQUIERDA(SUSTITUIR(EXTRAE(ESPACIOS(B12);BUSCAR(100;HALLAR($I$2:$I$7;ESPACIOS(B12)))+2;100);" ";REPETIR(" ";100));50)))

 

publicado

¡Hola, a todos!

He subido una serie de videos en mi canal de youtube que pueden ayudar al consultante, sobre como se pueden extraer numeros dentro de una cadena alfanumérica entre palabras.  Aquí subo el último que muestra la extracción, pero la recomendación es también ver los anteriores para entender mejor las técnicas que aquí se usan.  ¡Bendiciones para todos!

 

publicado
  • Autor
Hace 21 horas, bigpetroman dijo:

Amigo @Perssefones, en la macro, cambia esta linea

sSubTexto01 = Split(rCelda.Text, sSeparador)(0)

por esta otra

sSubTexto01 = Trim(Split(rCelda.Text, sSeparador)(0))

listo

Muchas gracias realmente! Una última duda, en caso coloco ->1% lee "->1% y no solo el %, pero si coloco -> 1% sí lee solo "1%"

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.