locked
fórmulas em vba RRS feed

  • Pergunta

  • Bom Dia.

     

    Estou tentando fazer no meu código (vba) com que uma célula receba o valor de uma fórmula. Como não entendi muito como funciona o "FormulaR1C1", estou tentando utilizar a solução de ".formula".

    O problema é quando vou tentar usar o ".formula" para uma fórmula que é um condicional (no caso o SE), ele dá erro. E preciso utilizar este condicional para comparar célula vazia, porém não sei se ele reconhece "" (aspas duplas).

     

    O que estou tentando fazer é:

    range("A1").Formula = "=SE(A1="";0;1)" -> Dá "erro de definição de aplicativo ou definição de objeto".

     

    Alguém sabe me ajudar nisto?

     

    Muito Obrigado!

     

    Rafael

     

     

    sexta-feira, 6 de julho de 2007 13:16

Todas as Respostas

  • Olá.

    Você tem duas opções:

    1. Range("A1").Formula="=IF(A1="""";0;1)"

    ou

    2. Range("A1").FormulaLocal="=SE(A1="""";0;1)"

     

    Observe, por favor, os seguintes pontos:

    1. A propriedade .Formula exige uma fórmula em Inglês, enquanto que a propriedade .FormulaLocal aceita uma fórmula no idioma local (do usuário).

    2. Quatro aspas consecutivas resultam em um string (texto) contendo um único par de aspas.

    Atenciosamente,

    sexta-feira, 6 de julho de 2007 18:59