Si existe una cadena de texto, seleccione la celda que contiene la cadena de texto

0

Grabé una macro que encuentra una cadena de texto y luego la elimina. Mi problema es que a veces esa cadena de texto no existe. Agradecería un poco de ayuda para cambiar la macro para verificar si existe la cadena de texto y luego seleccionarla. A continuación se muestra lo que tengo actualmente. Gracias por adelantado.

Cells.Find(What:="Test" _
, After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:= _
xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False) _
.Activate
Selection.ClearContents
Eric
fuente

Respuestas:

1

Range.Findregresa Nothingcuando no se puede encontrar el término de búsqueda, por lo que esto debería funcionar:

Set found = Cells.Find(What:="Test" _
, After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:= _
xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)

If Not found Is Nothing Then
    found.Activate
    found.ClearContents
End If

Puede omitir found.Activatesi no desea mover el cursor a donde se encuentra la cadena.

JRI
fuente