Combinando INDIRECT () e UDF [closed]

1

Eu criei uma UDF do Excel para encontrar a n ª ocorrência de um valor em um intervalo. O UDF é baseado no link :

Function Nth_Occurrence(range_look As Range, find_it As String, _

    occurrence As Long, offset_row As Long, offset_col As Long)

Dim lCount As Long

Dim rFound As Range

    Set rFound = range_look.Cells(1, 1)

        For lCount = 1 To occurrence

            Set rFound = range_look.Find(find_it, rFound, xlValues, xlWhole)

        Next lCount

   Nth_Occurrence = rFound.Offset(offset_row, offset_col)

End Function

No entanto, estou com um problema com o intervalo. Eu estou tentando usar INDIRECT () para se referir a um intervalo em outra pasta de trabalho. A fórmula que tenho agora é

 =Nth_Occurrence(INDIRECT("'["&$L$1&"]1'!$A$2:$A$10"),C1,1,1,1)

Em outras palavras, estou procurando um intervalo em uma pasta de trabalho, cujo nome está armazenado em L1, e o nome da planilha nessa pasta de trabalho é 1. Usei essa fórmula com êxito sem o INDIRECT ( ), mas quando tento usar INDIRECT (), recebo um erro #VALUE. Poderia ser um problema com o VBA ou uma limitação geral com UDFs? Obrigado.

    
por testing man 28.05.2015 / 15:08

0 respostas