Error 9 Subíndice fuera de range probado todo

Al recibir un subíndice de error de time de ejecución 9 fuera de range en la línea Set finder = .Find(clientName, LookIn:=xlValue, LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext) y he intentado un montón de cosas para arreglarlo. Me falta algo vital aquí y no estoy seguro de qué se trata. Lea todas las otras publicaciones aquí y ninguna parece ayudar / correlacionar demasiado de cerca.

Cosas a tener en count: 1) variable clientName es una cadena estándar que se valora correctamente cuando se pasa a la function. 2) Probé el object de la hoja de trabajo al agregar la línea contactsMaster.Activate antes de la línea de búsqueda y se activa correctamente en la hoja, lo que me lleva a pensar que no tiene nada que ver con el nombre de la hoja o libro de trabajo (yo uso getBook = Activeworkbook.Name en el sub principal para evitar problemas con los cambios de nombre del usuario. 3) Cambié el range a contactsMaster.Range("A:C") y eso tampoco cambió nada. 4) Los datos se almacenan en las columnas A a C. Un nombre de cliente por celda. Esta function está destinada a estandarizar el método de convención de nomenclatura por nombre de cliente para que pueda encontrar los files de cualquier macro utilizando la misma convención. 5) Inicialmente pensé que el uso de .Address en la línea de error arrojaba un error por algún motivo, pero no parece ser el caso, ya que lo eliminé y todavía recibo el mismo error. Código a continuación:

 Function GetClientName(clientName As String) As String 'Gets specific client name to save excel file in a standardized format to be found easily 'Sets Objects/vars Dim finder As Range Dim location As Long Dim contactsMaster As Worksheet Set contactsMaster = Workbooks("EEB MACRO DEVELOPMENT BOOK").Sheets("Contacts Master") With contactsMaster.Range("A1:C1000") Set finder = .Find(clientName, LookIn:=xlValue, LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext) End With 'Prevents error for not finding client in contacts master If finder Is Nothing Then GoTo endFunc End If location = finder.Row GetClientName = contactsMaster.Cells(location, 1) Exit Function endFunc: GetClientName = clientName End Function 

Solo necesita hacer que LookIn:=xlValues , tenga en count la "S" al final. Además, estás usando Lookin:= , LookAt:= , así que para continuidad, sugiero poner What:= también al inicio, para que obtengas:

Set finder = .Find(What:=clientName, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext)