Manejar errores en Excel VBA usando condicional If?


Mi pregunta es si es viable, recomendable o aceptable usar sentencias If para manejar errores en VBA, más concretamente excel. Supongamos lo siguiente:

Set Celda = Range("B5:B86").Find(ComboBox1.Value, LookIn:=xlValues, LookAt:=xlWhole) 

Imaginad que no encuentra nada. Entonces las siguientes operaciones con la variable Celda darían error en mi caso.

Podría hacer lo siguiente?:

'Comprobar si la celda tiene valor If Celda Is Nothing Then     MsgBox "Error. Se cancela la operación"    Exit Sub End If 

En cambio sé que la otra forma es usar On Error..

On Error GoTo ManejoError:  ManejoError:      MsgBox "Error."      Exit Sub 

Cual sería la mejor manera de manejar un error de este tipo? en este caso veo que con el If es posible. Pero no sé cual de las dos formas es la mas recomendable/eficiente/aceptable.