.11/11/16
Buenas tardes, Paco
Si te hubiese entendido correctamente, la siguiente rutina cuenta los casos coincidentes.
Accede al Editor de VBA (Atajo: Alt + F11), allí inserta un módulo (Insertar-Módulo) y pega el siguiente código:
Sub BuscaComm()
'---- Variables modificables ----
'=== PACO, modifica estos datos de acuerdo a tu proyecto:
inicelda = "A10" 'celda donde inicia la columna a revisar por coincidencia
Destcelda = "A8" ' celda donde dejar el conteo
Buscar = "E" ' texto a buscar
Exacto = False ' True = Contenido total de la celda coincide - False = Basta que aparezca dentro del texto
'---- fin Variables
'
'---- inicio de rutina:
'
Ultcelda = Range(inicelda).End(xlDown).Address
ElRango = Range(inicelda, Ultcelda).Address
cont = 0
For Each LaCelda In Range(ElRango)
If Not IsEmpty(LaCelda) Then
Set ElComent = LaCelda.Comment
If Not ElComent Is Nothing Then
If Exacto Then
If UCase(Trim(LaCelda)) = UCase(Buscar) Then cont = cont + 1
Else
If InStr(1, UCase(Trim(LaCelda)), UCase(Buscar)) Then cont = cont + 1
End If
End If
End If
Next
Range(Destcelda).Value = cont
ElMensaje = IIf(cont = 0, "SIN COINDENCIA ALGUNA, porque" & Chr(10) & "no se encontró: " & Buscar & Chr(10) & IIf(Exacto, " total", " parcial") & "mente en celdas con comentario.", "Se encontraron: " & cont & " coincidencia" & IIf(cont > 1, "s", "") & Chr(10) & IIf(Exacto, " total", " parcial") & " con " & Buscar & Chr(10) & "(se dejó el resultado en la celda " & Destcelda & ")")
TipoMens = IIf(cont = 0, vbCritical, vbInformation)
ElTitulo = IIf(cont = 0, "NO SE HIZO NADA", "TERMINADO!")
Application.ScreenUpdating = True
MsgBox ElMensaje, TipoMens, ElTitulo
Set ElComent = Nothing
End Sub
Nota que, al principio del código, hay unas variables para que lo adaptes a tu archivo, debidamente explicadas. Coloca tus valores luego del signo =
Como no lo aclaraste, una de las variables te permite indicar si la coincidencia debe ser completa (todo el contenido de la celda) o parcial.
.