Não sou tão experiente com vba, mas consigo quebrar um galho!
tenho uma planilha como base que fica fazendo os cálculos por trás e em vba um formulário que "se comunica" com a planilha, os usuários só podem e conseguem utilizar a interface do formulário, selecionam uma opção X na planilha e em vba essa opção é escrita na planilha que tem uma formula em procv que calcula o resultado na planilha mesmo e depois na sequencia do código vba em outro campo do formulário é refletido o resultado da formula que esta em outra celula... Eu sei que não é a forma certa, mas foi a maneira que consegui fazer pois não sei fazer todas as formulas direto no vba...
Pois bem tudo estava indo perfeitamente bem, funcionando 100%, uma planilha complexa porem rápida e funcional, mas hoje me surgiu um problema, estou com uma formula Matricial que busca mais de um retorno com ÍNDICE =SEERRO(ÍNDICE(BASE!$A:$A;MENOR((BASE!$E:$E=$B$2)*LIN(BASE!$E:$E);SOMARPRODUTO(N(((BASE!$E:$E=$B$2)*LIN(BASE!$E:$E))=0))+LIN()-1));""))
ela procura o resultado com base no valor indicado na célula "B2", quando eu executo a formula direto na planilha tudo ocorre bem e recebo os resultados exatos, porem quando tento trocar o valor da celular "B2" pelo formulário com VBA:
"Private Sub bduplic_Click()
Sheets("DUPLIC").Range("B2") = cpfp
End Sub"
o valor é alterado na celula "B2" normalmente, porém o resultado não aparece, a formula não é executada... se eu fecho o formulário volto pra planilha seleciono a célula e clico fora, a formula é executada normalmente, então pelo que intendi a formula não esta sendo executada...
alguém pode me ajudar a corrigir esse problema? existe algum comando para forçar a execução dessa formula matricial?
Obrigado desde ja, qualquer outra informação necessária estou a disposição, Obrigado!
Postado : 14/11/2016 1:44 pm