Colorear celda si no contiene ninguno de los parámetros buscados
Tengo una macro que hace lo siguiente:
En la columna J tengo una serie de medicamentos que la macro (que copio más abajo) clasifica poniendo un "1" en la columna correspondiente (la clasificación de los medicamentos va desde la columna M hasta la U)...
Por ej, si se trata de un analgésico opiode, me lo pone en la columna M, si se trata de un coadyuvante en la T, etc.
Además me resalta la celda del medicamento en un color, si en el texto de esta celda hay alguna palabar como "retira", "quita".. Etc. (por ejemplo, si en la celda dice "se retira Paracetamol", este medicamento no se clasifica en ninguna columna, sino que sólo se colorea la celda).
También me resalta la celda del medicamente en otro color, si el texto que hay en ella no coincide con ningún parámetro de búsqueda.
El problema que me surje es que en los parámetros de búsqueda sólo están incluidos los medicamentos habituales y no todos los existentes, por lo tanto, me gustaría incluir en esta macro que si en la celda hay alguna palabra que no he indicado en la búsqueda, también me resalte la celda de otro color.
Por ejemplo, si en la celda dice "Tramadol, Gabapentina y Yantil", la macro me estará colocando un 1 en la columna de Tramadoles, otro 1 en la columna de co-analgésicos (Gabapentina), pero el Yantil me quedó sin clasificar porque no lo he incluido en los parámetros de búsqueda. Y como la macro "al menos encuentra una coincidencia", esta celda no está resaltada y la da como OK.
Espero que se haya entendido..
Copio la macro que tengo actualmente
Sub clasificar()
Dim Posicion As Integer
Dim I As Long
Dim ultima_fila As Long
Dim contar_carac As Integer
Range("a1").End(xlDown).Select
ultima_fila = ActiveCell.Row
Range("J2").Select
For I = 1 To ultima_fila
contar_carac = 0
If InStr(1, ActiveCell, "retira", vbTextCompare) <> 0 Or InStr(1, ActiveCell, "tolera", vbTextCompare) <> 0 Or _
InStr(1, ActiveCell, "quita", vbTextCompare) <> 0 Or InStr(1, ActiveCell, "inicia", vbTextCompare) <> 0 Or _
InStr(1, ActiveCell, "incia", vbTextCompare) <> 0 Or InStr(1, ActiveCell, "aumenta", vbTextCompare) <> 0 Then
ActiveCell.Interior.Color = RGB(20, 255, 255)
Else
Posicion = InStr(1, ActiveCell, "Tramadol", vbTextCompare)
If Posicion <> 0 Then
ActiveCell.Offset(0, 3) = 1
contar_carac = contar_carac + 1
End If
Posicion = InStr(1, ActiveCell, "Adolonta", vbTextCompare)
If Posicion <> 0 Then
ActiveCell.Offset(0, 3) = 1
contar_carac = contar_carac + 1
End If
//...Y ASÍ CON TODOS LOS NOMBRES DE LOS MEDICAMENTOS...//
If contar_carac = 0 Then
ActiveCell.Interior.Color = RGB(255, 25, 255)
End If
End If
ActiveCell.Offset(1, 0).Select
Next I
End Sub