Pesquisar a string de uma fórmula

4

Existe uma função semelhante à Pesquisa que pode pesquisar em fórmulas, em vez do conteúdo da célula exibida? por exemplo. ser capaz de encontrar 'myWorksheet' em ='myWorksheet'!$A$1 . Eu preciso de uma fórmula real, em vez de usar fórmulas Show.

Eu posso fazer um em VBA com bastante facilidade, mas curioso para saber se há um pronto e meu Google-Fu me decepcionou.

    
por Absinthe 24.11.2017 / 10:12

2 respostas

3

Não há função de planilha do Excel que faça isso. Tanto Find () quanto Search () avaliarão o valor de uma célula, não sua fórmula subjacente.

O comando Localizar / Substituir (Ctrl-F ou Ctrl-H) tem a opção de pesquisar em fórmulas, mas só encontrará a célula com o termo de pesquisa, não a posição do termo de pesquisa dentro da célula.

    
por 24.11.2017 / 10:17
2

Como teylyn confirmou que não existe nenhuma função interna, criei a minha própria que compartilharei aqui caso seja útil para qualquer pessoa. Coloque-o em um módulo de código de uma pasta de trabalho habilitada para macro e use-o da mesma maneira que a Pesquisa. Ele pesquisará a fórmula da célula se ela tiver um ou o valor da célula, se não, e retornará a -1 se nenhuma correspondência for encontrada:

Function SearchFormula(rng As Range, val As String) As Integer

Dim f As String
Dim pos As Integer

f = rng.Formula

If f <> "" Then
    pos = InStr(1, f, val)
    If pos = 0 Then pos = -1
Else
    pos = -1
End If

SearchFormula = pos

End Function
    
por 24.11.2017 / 11:19