ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Code not working to move cursor down on Enter. (https://www.excelbanter.com/excel-programming/412065-code-not-working-move-cursor-down-enter.html)

Mike K

Code not working to move cursor down on Enter.
 
Oh Wise Ones,

I just need the curser to move down when I press enter, only when inside a
set range on a set workbook/worksheet, and move to the right all other
times.

From JLGWhiz-

First I tied this:

Set MyRange = ActiveSheet.Range("J3:L12")
If Intersect(MyRange, Target) Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
Else
Application.MoveAfterReturnDirection = xlToRight
End If

Did not do anything, still moved to the right.

Then I tried this from another post:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Set Target = Intersect(Target, Range("J3:L12"))
If Not Target Is Nothing Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
Else
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
End If
End Sub

Did not work either, got an error when it was placed in a module.

Any suggestions?

Thanks,
Mike

Norman Jones[_2_]

Code not working to move cursor down on Enter.
 
~Hi Mike,

JLG's code works for me.

This is event code and should be pasted
into the worksheets's code module (not a
standard module and not the workbook's
ThisWorkbook module):

Right-click the worksheet's tab |
Select 'View Code' from the menu
Paste the code
Alt-F11 to return to Excel.




---
Regards.
Norman


"Mike K" wrote in message
...
Oh Wise Ones,

I just need the curser to move down when I press enter, only when inside a
set range on a set workbook/worksheet, and move to the right all other
times.

From JLGWhiz-

First I tied this:

Set MyRange = ActiveSheet.Range("J3:L12")
If Intersect(MyRange, Target) Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
Else
Application.MoveAfterReturnDirection = xlToRight
End If

Did not do anything, still moved to the right.

Then I tried this from another post:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Set Target = Intersect(Target, Range("J3:L12"))
If Not Target Is Nothing Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
Else
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
End If
End Sub

Did not work either, got an error when it was placed in a module.

Any suggestions?

Thanks,
Mike



Mike K

Code not working to move cursor down on Enter.
 
Norman,
The first code did not work at all. The second code sort of
worked. It would move one cell to the right after an entry and then move
down, and stayed down, even after I left the range. I had to go into options
to reset it. Plus it behaved like that on the whole sheet. Is there
something that automatically reverts back to moving right when it is outside
the designated range?


I am using Excel 2003 on Windows XP professional.

Mike

"Norman Jones" wrote:

~Hi Mike,

JLG's code works for me.

This is event code and should be pasted
into the worksheets's code module (not a
standard module and not the workbook's
ThisWorkbook module):

Right-click the worksheet's tab |
Select 'View Code' from the menu
Paste the code
Alt-F11 to return to Excel.




---
Regards.
Norman


"Mike K" wrote in message
...
Oh Wise Ones,

I just need the curser to move down when I press enter, only when inside a
set range on a set workbook/worksheet, and move to the right all other
times.

From JLGWhiz-

First I tied this:

Set MyRange = ActiveSheet.Range("J3:L12")
If Intersect(MyRange, Target) Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
Else
Application.MoveAfterReturnDirection = xlToRight
End If

Did not do anything, still moved to the right.

Then I tried this from another post:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Set Target = Intersect(Target, Range("J3:L12"))
If Not Target Is Nothing Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
Else
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
End If
End Sub

Did not work either, got an error when it was placed in a module.

Any suggestions?

Thanks,
Mike




JLGWhiz

Code not working to move cursor down on Enter.
 
Mike, if you put the second code in the Worksheet module, it should work like
this:

1. If the change occurs inside the designated range, the cursor move to the
right.
2. If the change occurs outside the range, the cursor moves down.
3. Pressing Enter constitutes a change.

I believe this was what you asked for in the original posting. If you want
something different, then specify what you are looking for and someone will
try to help.

"Mike K" wrote:

Norman,
The first code did not work at all. The second code sort of
worked. It would move one cell to the right after an entry and then move
down, and stayed down, even after I left the range. I had to go into options
to reset it. Plus it behaved like that on the whole sheet. Is there
something that automatically reverts back to moving right when it is outside
the designated range?


I am using Excel 2003 on Windows XP professional.

Mike

"Norman Jones" wrote:

~Hi Mike,

JLG's code works for me.

This is event code and should be pasted
into the worksheets's code module (not a
standard module and not the workbook's
ThisWorkbook module):

Right-click the worksheet's tab |
Select 'View Code' from the menu
Paste the code
Alt-F11 to return to Excel.




---
Regards.
Norman


"Mike K" wrote in message
...
Oh Wise Ones,

I just need the curser to move down when I press enter, only when inside a
set range on a set workbook/worksheet, and move to the right all other
times.

From JLGWhiz-

First I tied this:

Set MyRange = ActiveSheet.Range("J3:L12")
If Intersect(MyRange, Target) Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
Else
Application.MoveAfterReturnDirection = xlToRight
End If

Did not do anything, still moved to the right.

Then I tried this from another post:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Set Target = Intersect(Target, Range("J3:L12"))
If Not Target Is Nothing Then
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlToRight
Else
Application.MoveAfterReturn = True
Application.MoveAfterReturnDirection = xlDown
End If
End Sub

Did not work either, got an error when it was placed in a module.

Any suggestions?

Thanks,
Mike





All times are GMT +1. The time now is 01:16 PM.

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