Macro de Excel: configuración del rango de caracteres en texto confuso en negrita

Macro de Excel: configuración del rango de caracteres en texto confuso en negrita

Lo que quiero hacer es lo siguiente: tengo alrededor de ~1400 filas llenas de datos, de las cuales la última columna contiene mucho texto. Aquí hay una imagen para mostrar lo que quiero decir: imagen eliminada porque solo puedo publicar 2 enlaces a la vez.

Ahora, para que el texto sea más fácil de leer, quiero poner en negrita algunas palabras.

Ahora mismo tengo la siguiente macro:

Dim range As range
Set range = Application.Selection

Dim boldwords As Variant
boldwords = Array("Atemschutz:", "Körperschutz:", "Handschutz:", "Augenschutz:")


Dim cell As range
For Each cell In range
    For Each bword In boldwords
        foundword = InStr(1, cell.Text, bword, VbCompareMethod.vbTextCompare)
        If foundword <> 0 Then
            cell.Characters(foundword, Len(bworld)).Font.Bold = True
        End If
    Next
Next
  1. Recorre todas las celdas seleccionadas
  2. recorra todas las palabras que deben estar en negrita y verifique si están contenidas en la celda
  3. Si lo son, ponlos en negrita.

Ahora mi problema es que, una vez que lo ejecuto, mi texto aparece completamente en negrita o confuso.Como esto , o coloca cada letra en una línea separada. Excel se ralentiza, se congela o, a veces, falla después de eso.

Qué se puede hacer para prevenir esto?

ACTUALIZACIÓN: Después de corregir el nombre de la variable que mencionó Siphor, el texto ya no está confuso pero a veces aún se divide en líneas separadas. Aquí hay una imagen para mostrar lo que quiero decir:Haz click en mi

Respuesta1

Creo que es un error en tu código,Len (bmundo)debiera serLen(bpalabra). Debe habilitar Declaración de variable requerida (Opción explícita) en las opciones de Vba. Ayuda a encontrar esos errores.

información relacionada