Editar - percebi que você declarou que pode estar trabalhando com centenas de critérios. Minha resposta original só seria eficaz por alguns critérios. Atualizei o código abaixo, mas as imagens ainda podem fazer referência ao antigo VBA.
Você pode fazer isso com um módulo VBA e até criar um botão para clicar que filtrará com base nos valores inseridos em determinadas células. Você desejará ter a guia do desenvolvedor na faixa de opções se ainda não tiver sido exibida. Veja aqui como mostrá-lo.
Primeiro, determine quais células manterão seus critérios de filtragem. Na sua primeira foto, você tem aqueles em F3-F5. Tudo bem, mas quando o intervalo é filtrado, essas células podem ficar ocultas. Por causa desta demonstração, eu coloquei o intervalo em uma área que não irá desaparecer quando eu filtrar.
Emseguida,pressioneAlt+F11paraabriroeditordoVBAe,emseguida,crie"New Module" selecionando-o na lista suspensa mostrada aqui:
Najaneladonovomóduloqueaparece,digiteoseguintecódigo(EDITED-percebiquevocêestápotencialmentelidandocomcentenasdecritérios):
SubMultiSelectFilter()DimvAsVariantv=Split(Join(Application.Transpose(Range("A11:A13"))))
Worksheets("Sheet3").Select
Range("A1").AutoFilter
Range("A1").AutoFilter Field:=1, Criteria1:=v, Operator:=xlFilterValues
End Sub
Veja como isso funciona: Primeiro, informamos ao Excel que A11: A13 são números que queremos procurar. É isso que a linha Dim v As Variant faz.
Então, dizemos ao excel quais são esses valores. No meu caso, A11 a A13. você pode adicionar ou subtrair quantos critérios de busca quiser.
Em seguida, informamos ao excel que intervalo queremos filtrar. Selecione a planilha primeiro e diga qual intervalo filtrar (nesse caso, A1 é a coluna que filtraremos). Em seguida, informamos à função AutoFilter quais valores devem ser procurados com Range("A1").AutoFilter Field:=1, Criteria1:=v, Operator:=xlFilterValues
.
Agora, quando você inserir valores, poderá executar a macro MultiSelectFilter na guia do desenvolvedor, em "Macros"
Efiltraointervalo:
Paradarumpassoalémetorná-loumpoucomaisamigável,vocêpodeatribuiramacroaumbotão.Adicioneumbotãonaseção"Inserir" na guia do desenvolvedor e selecione a macro MultiSelectFilter.
Se você é novo no VBA, este é um ótimo projeto para começar! Espero que isso ajude.