Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default assign onkey to 1 worksheet


marco recorder allows you to record an onkey macro suck as on key CTRL+
execute procedure however i have a workbook with 80+ worksheets and onl
want the onkey command to work on certain sheets, can this command b
assigned into the code i any particular worksheet if so how?
i know that the command is application.onkey "^{t}" for the above onke
command but this does not seem to work when i enter it into vba cose fo
a particular worksheet please advise thank

--
short_n_curl
-----------------------------------------------------------------------
short_n_curly's Profile: http://www.excelforum.com/member.php...fo&userid=2157
View this thread: http://www.excelforum.com/showthread.php?threadid=38387

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 860
Default assign onkey to 1 worksheet

Hi short_n_curly,

short_n_curly wrote:
marco recorder allows you to record an onkey macro suck as on key
CTRL+t execute procedure however i have a workbook with 80+
worksheets and only want the onkey command to work on certain sheets,
can this command be assigned into the code i any particular worksheet
if so how?
i know that the command is application.onkey "^{t}" for the above
onkey command but this does not seem to work when i enter it into vba
cose for a particular worksheet please advise thanks


Not directly. But in the procedure you assign to Ctrl+t via OnKey, you can
check the ActiveSheet to see if it matches the sheet you're targeting:

Sub startit()
Application.OnKey "^{t}", "test"
End Sub

Sub test()
If ActiveSheet Is Sheet1 Then
MsgBox ActiveSheet.Name
End If
End Sub

Sub endit()
Application.OnKey "^{t}"
End Sub

--
Regards,

Jake Marx
MS MVP - Excel
www.longhead.com

[please keep replies in the newsgroup - email address unmonitored]

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 93
Default assign onkey to 1 worksheet

You can paste a short test of activesheet name in the beginning of the
recorded macro. This will stop the macro if active sheet name is
"Sheet1", "Sheet2" or "Sheet3":


Select Case ActiveSheet.Name
Case "Sheet1", "Sheet2", "Sheet3"
Exit Sub
End Select

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 93
Default assign onkey to 1 worksheet

Vice versa:
this stops the macro if name of activesheet is not "Sheet4"

Sub macro_name()

Select Case ActiveSheet.Name
Case "Sheet4"
goto runit:
End Select
exit sub
runit:

<<<your code here

End sub

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default assign onkey to 1 worksheet


ok this helps but...... if i want ctrl+r to mean the same thing on each
individual worksheet (to reset it to a default state) but each
worksheet is different e.g one worksheet will have programmed via vba,
delete cells a30:a50. and a different worksheet via a different macro
procedure will delete a1:a10, with this proposed method is it possible
to assign ctrl+r to have more than 1 dirrerent function
what i intend to ask is if i wanted event procedure to on a cell entry
to trigger a macro i will programme in that worksheet

Private Sub Worksheet_Change(ByVal Target As Range)

set target.row and column and programme in the macro

end sub

what is the private sub header for an event to trigger in that
worksheet by pressing keys ctrl+r
if i could have this i could programme a different outcome in each
worksheet using the same key entry ctrl+r and therfor users will be
able to reset each sheet back to default with the same keystrokes
hope this explains things better thanks for the replies so far


--
short_n_curly
------------------------------------------------------------------------
short_n_curly's Profile: http://www.excelforum.com/member.php...o&userid=21576
View this thread: http://www.excelforum.com/showthread...hreadid=383876



  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default assign onkey to 1 worksheet

Onkey is an application level assignment.

Your recourse would be
- to use the Activate event of each sheet to reasign it to a sheet
specific macro.
- have one macro, but have a big case statement that determines which
action to take based on the activesheet

--
Regards,
Tom Ogilvy


"short_n_curly"
wrote in message
news:short_n_curly.1ri0eh_1120233927.4843@excelfor um-nospam.com...

ok this helps but...... if i want ctrl+r to mean the same thing on each
individual worksheet (to reset it to a default state) but each
worksheet is different e.g one worksheet will have programmed via vba,
delete cells a30:a50. and a different worksheet via a different macro
procedure will delete a1:a10, with this proposed method is it possible
to assign ctrl+r to have more than 1 dirrerent function
what i intend to ask is if i wanted event procedure to on a cell entry
to trigger a macro i will programme in that worksheet

Private Sub Worksheet_Change(ByVal Target As Range)

set target.row and column and programme in the macro

end sub

what is the private sub header for an event to trigger in that
worksheet by pressing keys ctrl+r
if i could have this i could programme a different outcome in each
worksheet using the same key entry ctrl+r and therfor users will be
able to reset each sheet back to default with the same keystrokes
hope this explains things better thanks for the replies so far


--
short_n_curly
------------------------------------------------------------------------
short_n_curly's Profile:

http://www.excelforum.com/member.php...o&userid=21576
View this thread: http://www.excelforum.com/showthread...hreadid=383876



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
i want to assign a cell to save a worksheet John Petranek Excel Worksheet Functions 2 March 14th 09 05:06 AM
Assign Range - Inactive Worksheet jazzjava Excel Programming 6 June 16th 05 01:39 AM
Add new worksheet and assign it to an object variable? Thief_ Excel Programming 2 April 4th 05 07:21 AM
assign value to cell in another worksheet tango Excel Programming 2 October 15th 04 06:18 AM
Assign a name to worksheet tabs by code Kat[_5_] Excel Programming 0 April 9th 04 08:21 PM


All times are GMT +1. The time now is 12:42 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"