Notifications
Clear all

Formula não entra via macro

3 Posts
2 Usuários
0 Reactions
859 Visualizações
(@rodrigod)
Posts: 35
Eminent Member
Topic starter
 

Bom dia!

Estou tentando adicionar a seguinte fórmula via macro:

 Master.Cells(lineSDF, 55).FormulaLocal = "=IFERROR(INDEX('DropDownList'!$B$2:$B$198;MATCH(BB23;'DropDownList'!$A$2:$A$198;0));"")"

Porém ocorre o erro "Application-defined error or object-defined error"

Se eu colocar a fórmula IFERROR(INDEX('DropDownList'!$B$2:$B$198;MATCH(BB23;'DropDownList'!$A$2:$A$198;0));"") na célula diretamente (sem macro), a célula funciona como quero, porém, se utilizo a macro para colocar a fórmula na célula que desejo, ocorre este erro!

Meu excel está em formato xlA1 e não em R1C1, utilizei o .FormulaLocal...

Qual é o erro nesta linha de código ?

Obs.: DropDownList é uma outra aba que contém uma tabela que utilizo valores...

 
Postado : 19/06/2015 8:01 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

rodrigod,

Bom dia!

A versão do seu Excel é em inglês? Se não for e se quiser inserir a função como IFERROR, deve utilizar .FORMULA e não . FORMULALOCAL. Com .FORMULALOCAL você tem que usar a função SEERRO.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 19/06/2015 8:15 am
(@rodrigod)
Posts: 35
Eminent Member
Topic starter
 

Bom dia Wagner!

Meu excel está em inglês... O problema era o "" no final da fórmula.

Fiz outras alterações no arquivo e achei melhor utilizar o R1C1. Agora ficou assim:

Master.Cells(lineSDF, 55).FormulaLocal = "=IFERROR(INDEX(DropDownList!R2C2:R198C2;MATCH(RC[-1];DropDownList!R2C1:R198C1;0));" & Chr(34) & Chr(34) & ")"

O & Chr(34) equivale a aspas duplas... substiuindo isto na fórmula, funcionou!!

Muito obrigado pela atenção e por tentar ajudar! :D

 
Postado : 19/06/2015 9:10 am