lunes, 22 de julio de 2024

Función Instr cambiar formato de una palabra dentro de un texto

 Vamos a realizar un ejemplo en Microsoft Excel, en él que tenemos un texto y queremos que una determinada palabra tome un formato que nosotros queremos, para ello utilizaremos una función en VBA Excel.

Tenemos un archivo y en la celda B2 tenemos la siguiente frase:


Vamos a realizar un ejemplo primero vamos a realizar una macro para poner el nombre de Felipe en negrita.

La función InStr tiene varios argumentos:

- Start, aquí pondremos un número y será desde el carácter que empezará a buscar.

- String1, que será la cadena de texto donde buscará,

- String2, expresión que será la cadena de texto buscada.

- Compare, que la comparación que efectuará, que en nuestro caso utilizaremos vbTextCompare.

Una vez utilizada esta función nos devolverá un la posición del carácter de la primera ocurrencia dentro de la cadena de texto, por lo que para dar formato a la palabra que queremos, nos hará falta más cosas.


En principio tenemos esta macro que nos devolverá el valor de 14 que es el carácter donde empieza nuestro nombre a buscar.

Ahora usaremos la función Characters.

Devuelve un objeto que representa un intervalo de caracteres dentro del texto del objeto. Use el objeto Characters para dar formato a los caracteres de una cadena de texto.

Esta función tiene dos argumentos:

- Start: Primer carácter para dar el formato. Que para nuestro caso será la funcion InStr.

- Length: La longitud de caracteres a los que afectará. 

Al final la macro nos pondrá el nombre en negrita y lo aumentará el tamaño a 20 pero solamente esa palabra encontrada.





Como vemos en la función Characters, el primer argumento es la función que construimos con InStr que los que nos hace devolver el carácter donde empieza la palabra buscada, y para calcular el largo de la palabra hemos utilizado la función len.

Y este es el resultado:




No hay comentarios:

Publicar un comentario

Gracias por participar en esta página.