Estoy tratando de encontrar una manera fácil de entender para extraer una cadena (que está en un rango de celdas) de un rango de celdas ...
Ese es el rango de celdas que tengo que buscar para una cadena específica (en un rango de posibilidades)
A1
BRANCO POLIESTER (25X40CM) - UNIART
COLORIDO POLIESTER (42X42CM) - UNIART
TRIO LOSANGO 125X65 ARTESANAL - MARROM - UNIART
ARTESANAL 30X130 - VERMELHO - UNIART
VERMELHO IMPRESSAO DIGITAL 30X30 - VERMELHO - UNIART
AQUARELADO TRIO 40X60 ARTESANAL - COLORIDO - UNIART
ALMOFADA TNT BRANCA 45X45CM - UNIART
TULIPAS 60X130 ARTESANAL - MARROM - UNIART
En la descripción está el tamaño (donde encontramos en otro rango de celdas)
B1
size
25X40
42X42
125X65
30X130
30X30
40X60
45X45
60X130
70X100
70X120
20x60
50x80
Lo que quiero: una columna con el tamaño que coincida con el tamaño en la descripción del producto más o menos así
C1
BRANCO POLIESTER (25X40CM) - UNIART 25x40
COLORIDO POLIESTER (42X42CM) - UNIART 42x42
Y así
Gracias por cualquier ayuda
openoffice-calc
string
range
Antonio Vasconcelos
fuente
fuente
Respuestas:
Esta solución dependerá de que tenga las Herramientas ► Opciones ► OpenOffice Calc ► Calcular ► Usar expresiones regulares en fórmulas COMPROBADAS. Sin esta opción habilitada, obtendrá # ¡VALOR! errores
El uso
SEARCH
con una máscara regex puede despegar el texto que desea y algunas manipulaciones de texto pueden recortar las sobras no deseadas de la operación de la tira.La fórmula estándar ( sin matriz ) en B1 es,
=TRIM(LEFT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(MID(UPPER(A1); SEARCH("([:digit:]([:alpha:]|[:digit:]))"; A1); 9); "CM"; " "); ")"; " "); " "; REPT(" "; 9)); 9))
SEARCH
función localiza el patrón <número> <por> <número> y devuelve la posición ordinal.MID
función como punto de partida.MID
toma un total de 9 caracteres desde el punto de partida.TRIM
se aplican para eliminar los espacios finales.Rellene según sea necesario.
fuente