Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 586
Default Get Value of ComboBox in Menu

I have a custom menu tab that contains a submenu item which contains a
combobox. I would like to set the zoom property of several worksheets to the
value of the combobox when it is changed.

1.) How can I get the value of the combobox? I want to call this Sub when
the combox is changed.

Public Sub ChangeDeptViews()

SubName = "ChangeDeptViews"

' make sure Global Schedule is the active sheet
If Not IsGlobalAvailable() Then
Exit Sub
End If

Application.ScreenUpdating = False

' store current sheet
Set wksCurrentSheet = ActiveSheet

Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext", _
"Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab", _
"Metal Paint", "Thermo", "Tri Graphics", "Deco Faces", _
"Tri-Face", "LED", "Crating", "Service",
"Delivery")).Select
Sheets("Engineering").Activate
DOESN'T WORK ActiveWindow.Zoom = CommandBars(1).Controls("Depts.
View").Value

' restore sheet that was active
wksCurrentSheet.Activate
Application.ScreenUpdating = False

End Sub

--
Cheers,
Ryan
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,718
Default Get Value of ComboBox in Menu

I have a custom menu tab

Assuming you're talking about pre-Excel 2007 commandbars and not the ribbon
("tab" is a bit confusing), then all you have to do is assign a macro to the
combobox with its OnAction property and have that sub determine which item
was selected:

Sub MacroAssignedToCombobox()
MsgBox CommandBars.ActionControl.ListIndex
' or
MsgBox CommandBars.ActionControl.Text
End Sub


--
Jim
"RyanH" wrote in message
...
|I have a custom menu tab that contains a submenu item which contains a
| combobox. I would like to set the zoom property of several worksheets to
the
| value of the combobox when it is changed.
|
| 1.) How can I get the value of the combobox? I want to call this Sub
when
| the combox is changed.
|
| Public Sub ChangeDeptViews()
|
| SubName = "ChangeDeptViews"
|
| ' make sure Global Schedule is the active sheet
| If Not IsGlobalAvailable() Then
| Exit Sub
| End If
|
| Application.ScreenUpdating = False
|
| ' store current sheet
| Set wksCurrentSheet = ActiveSheet
|
| Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext", _
| "Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab", _
| "Metal Paint", "Thermo", "Tri Graphics", "Deco Faces",
_
| "Tri-Face", "LED", "Crating", "Service",
| "Delivery")).Select
| Sheets("Engineering").Activate
| DOESN'T WORK ActiveWindow.Zoom = CommandBars(1).Controls("Depts.
| View").Value
|
| ' restore sheet that was active
| wksCurrentSheet.Activate
| Application.ScreenUpdating = False
|
| End Sub
|
| --
| Cheers,
| Ryan

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 586
Default Get Value of ComboBox in Menu

Yes, this menu tab is in 2003. But adding the line you suggested below does
not work. When I type the line the Auto List Members does not contain the
..Text property.

Public Sub ChangeDeptViews()

SubName = "ChangeDeptViews"

Dim wksCurrentSheet As Worksheet

' make sure Global Schedule is the active sheet
If Not IsGlobalAvailable() Then
Exit Sub
End If

SubName = "ChangeDeptViews"

With Application
.ScreenUpdating = False
.EnableEvents = False
End With

' store current sheet
Set wksCurrentSheet = ActiveSheet

Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext", _
"Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab", _
"Metal Paint", "Thermo", "Tri Graphics", "Deco Faces", _
"Tri-Face", "LED", "Crating", "Service",
"Delivery")).Select
Sheets("Engineering").Activate
ERROR ActiveWindow.Zoom = CommandBars.ActionControl.Text

' restore sheet that was active
wksCurrentSheet.Activate

With Application
.ScreenUpdating = False
.EnableEvents = True
End With

End Sub
--
Cheers,
Ryan


"Jim Rech" wrote:

I have a custom menu tab


Assuming you're talking about pre-Excel 2007 commandbars and not the ribbon
("tab" is a bit confusing), then all you have to do is assign a macro to the
combobox with its OnAction property and have that sub determine which item
was selected:

Sub MacroAssignedToCombobox()
MsgBox CommandBars.ActionControl.ListIndex
' or
MsgBox CommandBars.ActionControl.Text
End Sub


--
Jim
"RyanH" wrote in message
...
|I have a custom menu tab that contains a submenu item which contains a
| combobox. I would like to set the zoom property of several worksheets to
the
| value of the combobox when it is changed.
|
| 1.) How can I get the value of the combobox? I want to call this Sub
when
| the combox is changed.
|
| Public Sub ChangeDeptViews()
|
| SubName = "ChangeDeptViews"
|
| ' make sure Global Schedule is the active sheet
| If Not IsGlobalAvailable() Then
| Exit Sub
| End If
|
| Application.ScreenUpdating = False
|
| ' store current sheet
| Set wksCurrentSheet = ActiveSheet
|
| Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext", _
| "Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab", _
| "Metal Paint", "Thermo", "Tri Graphics", "Deco Faces",
_
| "Tri-Face", "LED", "Crating", "Service",
| "Delivery")).Select
| Sheets("Engineering").Activate
| DOESN'T WORK ActiveWindow.Zoom = CommandBars(1).Controls("Depts.
| View").Value
|
| ' restore sheet that was active
| wksCurrentSheet.Activate
| Application.ScreenUpdating = False
|
| End Sub
|
| --
| Cheers,
| Ryan


  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,718
Default Get Value of ComboBox in Menu

The code I suggested was from a working example so it's good. Don't worry
about the "auto list" as what shows up depends on how the object is
declared. Make sure that the .Text you get is exactly what the .Zoom
property is looking for. Zoom wants a number, .Text returns a string. You
might have to convert it. Experiment.

--
Jim
"RyanH" wrote in message
...
| Yes, this menu tab is in 2003. But adding the line you suggested below
does
| not work. When I type the line the Auto List Members does not contain the
| .Text property.
|
| Public Sub ChangeDeptViews()
|
| SubName = "ChangeDeptViews"
|
| Dim wksCurrentSheet As Worksheet
|
| ' make sure Global Schedule is the active sheet
| If Not IsGlobalAvailable() Then
| Exit Sub
| End If
|
| SubName = "ChangeDeptViews"
|
| With Application
| .ScreenUpdating = False
| .EnableEvents = False
| End With
|
| ' store current sheet
| Set wksCurrentSheet = ActiveSheet
|
| Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext", _
| "Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab", _
| "Metal Paint", "Thermo", "Tri Graphics", "Deco Faces",
_
| "Tri-Face", "LED", "Crating", "Service",
| "Delivery")).Select
| Sheets("Engineering").Activate
| ERROR ActiveWindow.Zoom = CommandBars.ActionControl.Text
|
| ' restore sheet that was active
| wksCurrentSheet.Activate
|
| With Application
| .ScreenUpdating = False
| .EnableEvents = True
| End With
|
| End Sub
| --
| Cheers,
| Ryan
|
|
| "Jim Rech" wrote:
|
| I have a custom menu tab
|
| Assuming you're talking about pre-Excel 2007 commandbars and not the
ribbon
| ("tab" is a bit confusing), then all you have to do is assign a macro to
the
| combobox with its OnAction property and have that sub determine which
item
| was selected:
|
| Sub MacroAssignedToCombobox()
| MsgBox CommandBars.ActionControl.ListIndex
| ' or
| MsgBox CommandBars.ActionControl.Text
| End Sub
|
|
| --
| Jim
| "RyanH" wrote in message
| ...
| |I have a custom menu tab that contains a submenu item which contains a
| | combobox. I would like to set the zoom property of several worksheets
to
| the
| | value of the combobox when it is changed.
| |
| | 1.) How can I get the value of the combobox? I want to call this Sub
| when
| | the combox is changed.
| |
| | Public Sub ChangeDeptViews()
| |
| | SubName = "ChangeDeptViews"
| |
| | ' make sure Global Schedule is the active sheet
| | If Not IsGlobalAvailable() Then
| | Exit Sub
| | End If
| |
| | Application.ScreenUpdating = False
| |
| | ' store current sheet
| | Set wksCurrentSheet = ActiveSheet
| |
| | Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext",
_
| | "Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab",
_
| | "Metal Paint", "Thermo", "Tri Graphics", "Deco
Faces",
| _
| | "Tri-Face", "LED", "Crating", "Service",
| | "Delivery")).Select
| | Sheets("Engineering").Activate
| | DOESN'T WORK ActiveWindow.Zoom = CommandBars(1).Controls("Depts.
| | View").Value
| |
| | ' restore sheet that was active
| | wksCurrentSheet.Activate
| | Application.ScreenUpdating = False
| |
| | End Sub
| |
| | --
| | Cheers,
| | Ryan
|
|

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 586
Default Get Value of ComboBox in Menu

Thanks for the tips! Here is what I used and it works great!

ActiveWindow.Zoom = Val(CommandBars.ActionControl.Text)
--
Cheers,
Ryan


"Jim Rech" wrote:

The code I suggested was from a working example so it's good. Don't worry
about the "auto list" as what shows up depends on how the object is
declared. Make sure that the .Text you get is exactly what the .Zoom
property is looking for. Zoom wants a number, .Text returns a string. You
might have to convert it. Experiment.

--
Jim
"RyanH" wrote in message
...
| Yes, this menu tab is in 2003. But adding the line you suggested below
does
| not work. When I type the line the Auto List Members does not contain the
| .Text property.
|
| Public Sub ChangeDeptViews()
|
| SubName = "ChangeDeptViews"
|
| Dim wksCurrentSheet As Worksheet
|
| ' make sure Global Schedule is the active sheet
| If Not IsGlobalAvailable() Then
| Exit Sub
| End If
|
| SubName = "ChangeDeptViews"
|
| With Application
| .ScreenUpdating = False
| .EnableEvents = False
| End With
|
| ' store current sheet
| Set wksCurrentSheet = ActiveSheet
|
| Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext", _
| "Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab", _
| "Metal Paint", "Thermo", "Tri Graphics", "Deco Faces",
_
| "Tri-Face", "LED", "Crating", "Service",
| "Delivery")).Select
| Sheets("Engineering").Activate
| ERROR ActiveWindow.Zoom = CommandBars.ActionControl.Text
|
| ' restore sheet that was active
| wksCurrentSheet.Activate
|
| With Application
| .ScreenUpdating = False
| .EnableEvents = True
| End With
|
| End Sub
| --
| Cheers,
| Ryan
|
|
| "Jim Rech" wrote:
|
| I have a custom menu tab
|
| Assuming you're talking about pre-Excel 2007 commandbars and not the
ribbon
| ("tab" is a bit confusing), then all you have to do is assign a macro to
the
| combobox with its OnAction property and have that sub determine which
item
| was selected:
|
| Sub MacroAssignedToCombobox()
| MsgBox CommandBars.ActionControl.ListIndex
| ' or
| MsgBox CommandBars.ActionControl.Text
| End Sub
|
|
| --
| Jim
| "RyanH" wrote in message
| ...
| |I have a custom menu tab that contains a submenu item which contains a
| | combobox. I would like to set the zoom property of several worksheets
to
| the
| | value of the combobox when it is changed.
| |
| | 1.) How can I get the value of the combobox? I want to call this Sub
| when
| | the combox is changed.
| |
| | Public Sub ChangeDeptViews()
| |
| | SubName = "ChangeDeptViews"
| |
| | ' make sure Global Schedule is the active sheet
| | If Not IsGlobalAvailable() Then
| | Exit Sub
| | End If
| |
| | Application.ScreenUpdating = False
| |
| | ' store current sheet
| | Set wksCurrentSheet = ActiveSheet
| |
| | Sheets(Array("Engineering", "Graph Prod", "Metal Fab", "Alum Ext",
_
| | "Custom Fab", "Electrical", "Ch Ltrs", "Foam Fab",
_
| | "Metal Paint", "Thermo", "Tri Graphics", "Deco
Faces",
| _
| | "Tri-Face", "LED", "Crating", "Service",
| | "Delivery")).Select
| | Sheets("Engineering").Activate
| | DOESN'T WORK ActiveWindow.Zoom = CommandBars(1).Controls("Depts.
| | View").Value
| |
| | ' restore sheet that was active
| | wksCurrentSheet.Activate
| | Application.ScreenUpdating = False
| |
| | End Sub
| |
| | --
| | Cheers,
| | Ryan
|
|




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
Change Zoom Value of Window with ComboBox in Custom Menu Control RyanH Excel Programming 0 October 17th 08 01:16 AM
Macro that Finds the First Value in a range using a Combobox (drop down menu) [email protected] Excel Worksheet Functions 2 July 12th 07 07:50 PM
Combobox items determined by the selection in another combobox Alerion Excel Programming 2 September 13th 06 01:07 PM
combobox in a menu Leif Excel Programming 5 November 30th 05 10:28 AM
ComboBox list reliant on the entry from a different ComboBox ndm berry[_2_] Excel Programming 4 October 4th 05 04:40 PM


All times are GMT +1. The time now is 09:38 AM.

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"