Cursor Movement?

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

How do I make the cursor got to a specific cell in a worksheet? The
worksheet is for others to enter data and some cells are locked - I want the
user to simply be able to hit the enter key and go to the next cell that
needs data entered - in sequence - Any help with what I thought would be
simple is appreciated!
 
Hi,

Since you say some cells are locked then when you apply the protection only
check the box to Select Unlocked cells. (Uncheck the box Select locked cells.)

You will need to Unprotect and reapply Protect to do this.

Regards,

OssieMac
 
I guess I need to explain more: They enter information from D2:D10 then when
they hit the enter button after inputting data in D10 I want the cursor to
jump to J4 and type in data then when they hit enter have the cursor jump to
C14 .... there are several jumps within the sheet. In Access you would just
set up a tab order, but this customer wants this form in Excel. Any
suggestions?
 
Hi again,

Someone might be able to suggest a better idea but it would be possible to
set up a worksheet change event with a Select Case so that each time a value
is entered then the cursor would jump to a specified cell relative to the
last cell changed. However, it relies on an actual change. If no entry made
and the user presses Enter then nothing occurs.

If you are interested and you want me to write the code then let me know and
provide a list of the cell addresses to change in their correct order. (Not
too difficult for you to adjust if the order is not correct.)


Regards,

OssieMac
 
Sounds Great - better than any idea that I have been able to come up with or
research! If you can get me started I think I can add all of the in between
since there are so many, but here is the start of it:

d1, d2, d3, d4, d5, d, d7, d8, d9, j4 j5, c14, 15, c16, c17, c18, f14.......

Thanks for your help - I've been working on this all night and need to get
it done before 3 today if possible!
 
THANKS! That helped get me started - just an FYI - instead of entering all of
the cells individually I named ranges and then used ctrl+click to select them
when setting up the tab order. It typed it out for me. I still had to make
two tab orders due to the length. So now I ask you (since I've never used VBA
but did take BASIC (I won't mention how many years it has been) - how do I
get the worksheet open, while protected, and run the taborder1 then run
taborder2 without having to have them select it from the name range? I'm not
sure some of my computer illiterate company men will be able to do anything
but open it up, enter the data, save & print so I need it as automatic as
possible. THANK YOU AGAIN FOR SO MUCH HELP!!!
 
How many cells are you talking about?

More than the 46 that could be entered in the defined name refers to?

How many more?

Using CTRL + Click will add the sheetname to each cell, cutting down on the
number of cells in the 255 character limited range.

You already have taborder1 and taborder2 defined?


Gord
 
I already have taborder1(TabInfo) and taborder2 (TabData) setup. Taborder1
has 28 cells (5 ranges) and Taborder2 has 371 cells (16 ranges). The tab
order works like it is supposed to, but I really need it to automatically
select the ranges - allow the input of data in each cell, automatically
select the next range, and allow them to input the data in each cell. I found
the following code, but I don't know how to make it stop between cells and
allow them to enter data if I use it - any suggestions are highly
appreciative!

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.Goto Reference:=Worksheets("PT").Range("TABINFO")

Application.Goto Reference:=Worksheets("PT").Range("TABDATA")

End Sub
 
400 cells to be filled in a particular order?

There must be another way to get this data entered and placed into the correct
cells without jumping around from range to range.

I see what you are wanting to do but I believe it would involve Arrays and
LBound and UBound Functions

I am not familiar enough with this type of code to assist you very much.

As a start we could work from this point.

Place this in the worksheet module. to get you the TABDATA ranges selected for
input.

Private Sub Worksheet_Activate()
Application.Goto Reference:=Worksheets("PT").Range("TABDATA")
End Sub


Gord
 
This is what I am thinking will work - i just don't know exactly how to write
it - can you look at it and see? I would truly appreciate it!

Private Sub Worksheet_Activate()
CombineRange ("taborder")
Dim r1, r2, taborder As Range
Set r1 = Sheets("pt").Range("TABINFO")
Set r2 = Sheets("pt").Range("TABDATA")
Set taborder = Union(r1, r2)
taborder.Activate
Exit Sub
Application.Goto Reference:=Worksheets("pt").Range("tabofder")

End Sub
 
Back
Top