How to Select Excel Scenarios from a Drop-Down List or Button
Question details
The user wants to activate and switch between different Excel scenarios using a drop-down list or interactive buttons instead of repeatedly navigating through the Scenario Manager dialog.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Performing what-if analysis and switching between multiple predefined data scenarios rapidly.
- Observed behavior
- Manually opening the Scenario Manager each time to display different scenario values is tedious and interrupts the workflow.
Ensure you have already created the desired scenarios using the Scenario Manager and that the Developer tab is enabled in your Excel ribbon so you can access the VBA Editor.
Use a Data Validation Drop-Down with a Worksheet Change Event
Create a drop-down list of your scenarios and use a VBA Worksheet_Change macro to automatically trigger the selected scenario.
This method is highly efficient because it automatically updates your worksheet values the moment a new scenario is selected from the cell drop-down.
Select a cell (e.g., E2). Go to the Data tab, click Data Validation, choose 'List' from the Allow criteria, and type your exact scenario names separated by commas.
Press Alt + F11 to open the Visual Basic for Applications (VBA) editor. In the Project Explorer pane on the left, double-click the specific worksheet containing your drop-down list (e.g., Sheet1).
In the code window, select 'Worksheet' from the left drop-down and 'Change' from the right. Add logic to check if the changed cell is E2, such as: `If Target.Address = "$E$2" Then ActiveSheet.Scenarios(Target.Value).Show`.
Close the VBA Editor and return to your worksheet. Select a different scenario name from your drop-down list. The associated values in the worksheet should update automatically.
Assign Macros to Form Control Buttons
Write individual macros for each scenario and link them to clickable buttons on your worksheet.
Create Automated Scenario Models in WPS Spreadsheet
WPS Spreadsheet fully supports VBA macros, Form Controls, and Data Validation, making it incredibly easy to link scenarios to drop-down lists or interactive buttons.
- 1. Enable Developer Tools: Launch WPS Spreadsheet and navigate to the Developer tab to access Macros and Visual Basic features.
- 2. Set Up Your Drop-Down: Use the Data Validation feature under the Data tab to create a customized list of your predefined scenarios.
- 3. Add the VBA Script: Click 'Visual Basic' to enter the code editor and insert your Worksheet_Change event script just like you would in Excel.
- 4. Save and Execute: Save your document as an Excel Macro-Enabled Workbook (.xlsm) to preserve functionality and test your automated drop-down.

Frequently Asked Questions
Why is my VBA code not triggering when I change the drop-down list?
This usually happens for two reasons: macros are disabled in your security settings, or the Worksheet_Change code was placed in a standard Module instead of the specific Worksheet object module (e.g., Sheet1). Make sure the code is in the correct sheet module.
Do the names in my drop-down list need to match the Scenario names exactly?
Yes. The VBA code relies on the exact string value selected in the drop-down list to identify which scenario to show. Any mismatch in spelling, capitalization, or extra spaces will cause a Run-time error.
Can I use an ActiveX Combo Box instead of a Data Validation list?
Yes, you can insert a Combo Box (ActiveX Control) from the Developer tab. You will need to populate the Combo Box with your scenario names and use a ComboBox_Change event macro, rather than a Worksheet_Change event, to trigger the scenario switch.
How do I prevent errors if someone types a scenario name that doesn't exist?
If you are using a Data Validation list, ensure the 'Show error alert after invalid data is entered' option is checked. This forces the user to select only valid scenario names from the predefined drop-down options.




