Num newsgroup, colocaram a seguinte questão: "Gostaria que nas células que o utilizador percorra, A1, A2, A3, onde vai depositando valores numericos, esses mesmos valores sejam automaticamente carregados para uma outra célula que será sempre a mesma, por exemplo em C5, isto porque em C5 a cada valor percorrido na coluna A, vão sendo efectuados diversos cálculos baseados nos valores dos inputs que vão sendo feitos.
O Código:
Private Sub Worksheet_Change(ByVal Target As Range)
'JRod – Microsoft [MVP] – Excel
'blog: http://EXCELer.blogspot.com
'site: https://www.exceler.org
'email1: mail@exceler.org
'email2: blog.exceler@netcabo.pt
'
Const WS_RANGE As String = "A1:A10"
Dim vValor As Long
On Error GoTo ws_exit
Application.EnableEvents = False
If Not Intersect(Target, Me.Range(WS_RANGE)) Is Nothing Then
With Target
ActiveCell.Offset(-1, 0).Activate
vValor = Application.ActiveCell.Value
Range("C5") = vValor
End With
End If
ws_exit:
Application.EnableEvents = True
End Sub
Nota: O Código deve ser inserido no próprio módulo da Sheet activa.
Tópicos relacionados: