Fórmula do Excel VBA ActiveCell convertida em valor

0

Eu tenho uma fórmula em uma célula que calcula uma determinada data. Eu quero escrever uma macro VBA que irá tomar a fórmula, convertê-lo para o valor de data resultante e copiar esse valor para outra célula / adjacente.

Eu tentei gravar a macro usando "F2" e "F9", no entanto, o script VBA retorna, por exemplo

ActiveCell.FormulaR1C1 = "12/31/2009". 

Eu quero escrever a macro para funcionar nos anos futuros, onde a fórmula para a célula de data poderia ser 31/12/2012, 2013, etc. Eu criei fórmulas para eliminar o efeito do ano bissexto, então não posso simplesmente adicione 365 para derivar no próximo ano.

    
por Chuck 11.05.2012 / 23:09

1 resposta

2

Isso copiará o valor e o formato da célula ativa atual para a célula à direita

Sub CopyValue()
    ActiveCell.Offset(0, 1).Value = ActiveCell.Value
    ActiveCell.Offset(0, 1).NumberFormat = ActiveCell.NumberFormat
End Sub
    
por 11.05.2012 / 23:32