O uso da função de planilha do aplicativo nesta seção está errado
With Application.WorksheetFunction
W.Range("M26").Value = .Index(TabelaSelecionada, .Match(NPartes, _
W.Range(vTamanho.Offset(1, 0), vTamanho.Offset(5, 0)), 0), .Match(Espessura, _
W.Range(vTamanho.Offset(0, 1), vTamanho.Offset(0, 10)), 0))
End With
With W
.Range("M26").Value = .Index(TabelaSelecionada, WorksheetFunction.Match(NPartes, _
.Range(vTamanho.Offset(1, 0), vTamanho.Offset(5, 0)), 0), WorksheetFunction.Match(Espessura, _
.Range(vTamanho.Offset(0, 1), vTamanho.Offset(0, 10)), 0))
End With
Você vai ter que experimentar para ver se consegue, sem um exemplo concreto eu não posso fazer nada