Saltar al contenido

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


Perssefones

Recommended Posts

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

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
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.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.