ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Worksheet Functions (https://www.excelbanter.com/excel-worksheet-functions/)
-   -   Which cell was the activecell before a keypress (https://www.excelbanter.com/excel-worksheet-functions/90720-cell-activecell-before-keypress.html)

excelent

Which cell was the activecell before a keypress
 
Hi fellows

I got 2 sheets excatly the same except the name
when i put a number in a cell and press enter, the number is copyed to the
other sheet too
but if i put in a number, and press Tab or left/right/up arrow the sub
dosent work
haw do i get to no what key was pressed? or what cell was active begore the
action?


Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, ActiveCell.Offset(-1, 0)) Is Nothing Then Exit Sub
If Not IsNumeric(ActiveCell.Offset(-1, 0)) Then Exit Sub
Dim adr
adr = ActiveCell.Offset(-1, 0).Address
Sheets("Gr.1").Range(adr).Value = Sheets("Gr.1").Range(adr).Value +
Range(adr).Value
Range(adr).Value = ""
End Sub

any sugestion ?


Norman Jones

Which cell was the activecell before a keypress
 
Hi Excelent,

Try replacing your code with:

'=============
Private Sub Worksheet_Change(ByVal Target As Range)
Dim adr As String

If Not IsNumeric(Target) Then Exit Sub

On Error GoTo XIT
Application.EnableEvents = False

adr = Target.Address
Sheets("Sheet3").Range(adr).Value = _
Sheets("Sheet3").Range(adr).Value _
+ Range(adr).Value
Range(adr).Value = ""

XIT:
Application.EnableEvents = True
End Sub
'<<=============


---
Regards,
Norman


"excelent" wrote in message
...
Hi fellows

I got 2 sheets excatly the same except the name
when i put a number in a cell and press enter, the number is copyed to the
other sheet too
but if i put in a number, and press Tab or left/right/up arrow the sub
dosent work
haw do i get to no what key was pressed? or what cell was active begore
the
action?


Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, ActiveCell.Offset(-1, 0)) Is Nothing Then Exit Sub
If Not IsNumeric(ActiveCell.Offset(-1, 0)) Then Exit Sub
Dim adr
adr = ActiveCell.Offset(-1, 0).Address
Sheets("Gr.1").Range(adr).Value = Sheets("Gr.1").Range(adr).Value +
Range(adr).Value
Range(adr).Value = ""
End Sub

any sugestion ?




excelent

Which cell was the activecell before a keypress
 
Hi Norman
Perfect - just what i neded :-)

tanks alot

sry my french Denmark u no :-)



All times are GMT +1. The time now is 10:38 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com