Notifications
Clear all

Retornar fórmula da célula selecionada

6 Posts
3 Usuários
0 Reactions
1,703 Visualizações
(@acarloos)
Posts: 40
Eminent Member
Topic starter
 

Boa tarde :D
O macro abaixo retorna o valor de uma célula selecionada em outra célula. Como eu posso modificar esse macro para que ao invés de retornar o valor da célula
ele me retorne a fórmula contida nessa célula ?

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(ActiveCell, Range("A2")) Is Nothing Then Range("C2").Value2 = ActiveCell.Value2
End Sub

Grato

Att.

 
Postado : 04/03/2015 12:07 pm
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

acarloos,

Boa tarde!

Já tentou assim?

    If Not Intersect(ActiveCell, Range("A2")) Is Nothing Then Range("C2").Value2 = ActiveCell.FormulaLocal

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 : 04/03/2015 12:44 pm
(@acarloos)
Posts: 40
Eminent Member
Topic starter
 

Wagner,

Dessa forma que você sugeriu não funcionou e acaba dando o seguinte erro :

Erro em tempo de execução '1004"
Erro de definição de aplicativo ou de definição de objeto.

 
Postado : 04/03/2015 1:10 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(ActiveCell, Range("A2")) Is Nothing Then Range("C2").Value2 = ActiveCell.Formula
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 04/03/2015 2:02 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Não serve se for assim..Uma UDF?

Function MostrarFormula(Cell As Range) As String
        If Cell.HasFormula Then MostrarFormula = Cell.Formula
    End Function

Fonte: http://dmcritchie.mvps.org/excel/formula.htm

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 04/03/2015 2:04 pm
(@acarloos)
Posts: 40
Eminent Member
Topic starter
 

Boa noite!

Fernando, seu macro tá igual ao do Wagner e não sei a razão pela qual não funcionou aqui. Acabei mexendo e encontrei uma forma
de fazer que pro meu caso aqui seria só retirar esse LOCAL do macro.
Alexandre, também não sei porque a UDF não funcionou aqui. Tô imaginando se é pelo fato do meu Excel ser 2007.

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(ActiveCell, Range("A2")) Is Nothing Then Range("C2").Value2 = ActiveCell.Formula
End Sub

Grato pela contribuição de todos.

Abs

acarloos

 
Postado : 04/03/2015 5:10 pm