На этом шаге мы рассмотрим основные свойства и методы этого объекта и приведем пример его использования.
Объект Scenario (Сценарий) позволяет хранить несколько значений в одной ячейке. Каждое уникальное значение в ячейке или каждая уникальная группа значений для группы ячеек называется сценарием. Семейство Scenarios (Сценарии) содержит все сценарии рабочего листа. Вручную сценарии создаются с помощью команды Сервис | Сценарии (Tools | Scenarios).
Рассмотрим методы объекта Scenario.
| Метод | Назначение |
|---|---|
| Add | Добавляет новый сценарий. Синтаксис:
Add (Name, ChangingCells, Values, Comment, Locked, Hidden)
|
| Show | Показывает сценарий посредством ввода значений сценария в изменяемые ячейки |
| ChangeScenario | Изменяет группу изменяемых ячеек. Синтаксис:
ChangeScenario (ChangingCells, Values)
|
| Delete | Удаляет сценарий |
Рассмотрим наиболее часто используемые свойства объекта Scenario.
| Свойство | Назначение |
|---|---|
| ChangingCells | Возвращает диапазон изменяемых ячеек. Например:
Scenarios(1).ChangingCells.Select |
| Value | Возвращает массив текущих значений изменяемых ячеек. Например:
Scenarios(1).Values = Worksheets("Лист1").Range("C5:T5")
или
Scenarios(1).Values = Array(1,3,5,7,11,13,17,19)
|
Приведем соответствие между аргументами методов Add и Show семейства Scenarios и созданием сценариев вручную при помощи команды Сервис | Сценарии (Tools | Scenarios) на примере создания расчета суммарных затрат (рисунок 1) при двух вариантах (сценариях) стоимостей комплектующих и расходных материалов (таблица 2).

Рис.1. Расчет суммарных затрат
| Вариант | Комплектующие | Расходные материалы |
|---|---|---|
| 1 | 1000 | 200 |
| 2 | 800 | 300 |
Суммарные затраты вычисляются в ячейке В5 по формуле:
=СУММ(В3:В4)

Рис.2. Диалоговое окно Диспетчер сценариев
Нажмите кнопку Добавить (Add).

Рис.3. Диалоговое окно Добавление сценария

Рис.4. Диалоговое окно Значения ячеек сценария
В данном случае в поле $B$3 введите 1000, а в поле $B$4 введите 200. Нажатие кнопки Добавить (Add) приведет к появлению диалогового окна Добавление сценария (Add Scenario), в котором следует ввести параметры второго сценария и т.д. После создания требуемого количества сценариев нажмите кнопку ОК, которая приведет к завершению создания сценариев.

Рис.5. Диалоговое окно Диспетчер сценариев после создания двух сценариев
ActiveSheet.Scenarios.Add _
Name:= "Вариант 1", _
ChangingCells:=Range ("B3:B4"), _
Values:=Array("1000", "200") , _
Comment:="Автор: Иван Иванов, 28.03.99", _
Locked:=True, Hidden:=False
ActiveSheet.Scenarios.Add _
Name: ="Вариант 2", _
ChangingCells:=Range("B3:B4"), _
Values:=Array ("800", "300"), _
Comment :="Автор: Иван Иванов, 28.03.99", _
Locked:=True, Hidden:=False
Отображение сценариев на рабочем листе осуществляется следующими двумя инструкциями:
ActiveSheet.Scenarios("Вариант 1").Show
ActiveSheet.Scenarios("Вариант 2").Show
На следующем шаге мы рассмотрим объект Outline.