Excel / VBA - função Correspondência de índice usando intervalos dinâmicos

Como usar efetivamente umIndex/Match fórmula em VBA?

Plano de fundo: tenho uma planilha que depende muito do uso de uma fórmula que recupera uma saída com base na correspondência de um nome específico com o intervalo de nome, além de uma data específica para o período.

=INDEX(OutputRange,MATCH(1,(Name=NameRange)*(Date=DateRange),FALSE),1)

Além disso, há um subconjunto do VBA codificado que produz a mesma saída

Sub ExampleHardCode() 
Dim Result As Variant
  Result = Evaluate("INDEX($C$4:$C$13,MATCH(1,($G$6=$A$4:$A$13)*($G8=$B$4:$B$13),FALSE),1)")
  ActiveCell.Value = Result
End Sub

Pergunta: Gostaria de produzir uma função que retorne a mesma saída das opções acima, mas permita ao usuário (i) selecionar os valores de Nome e Data fazendo referência às respectivas células e (ii) selecionar cada intervalo (intervalo de nome, intervalo de datas e faixa de saída). Essencialmente usando = examplefunction (valor do nome, intervalo de nome, valor de data, intervalo de datas, intervalo de saída) no excel.

Eu tentei várias soluções diferentes, mas sem sucesso. Abaixo está um exemplo do que eu tentei até agora, acho que há um problema com a parte da correspondência, mesmo quando eu tento definir os intervalos (com intervalos codificados), ele retorna um erro.

Function TestIndexMatch1(NameVal As Variant, DateVal As Date)

Dim NameRng As Range
Dim DateRng As Range
Dim OutputRng As Range
Dim Var1 As Variant  'should this be a range or integer?
Dim Result As Variant 

Set NameRng = Range("$A$4:$A$13")
Set DateRng = Range("$B$4:$B$13")
Set OutputRng = Range("$C$4:$D$13")

With Application.WorksheetFunction
    Var1 = .Match(1, (NameVal = NameRng) * (DateVal = DateRng), False)
    Result = .Index(OutputRng, Var1, 1)
End With
End Function

Eu tenho um exemplo de pasta de trabalho, se me ajudar a compartilhar. Não tenho certeza se isso é muito factível, mas, se for o caso, realmente ajudaria muitos usuários que não estão familiarizados o suficiente com o Excel a usar a fórmula de índice / correspondência do Excel corretamente. Infelizmente para mim minhas habilidades de excel excedem em muito minhas habilidades de VBA.

questionAnswers(1)

yourAnswerToTheQuestion