Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая / Источники / excel_2010_professionalnoe_programmirovanie_na_vba_RuLit_Me_412629.pdf
Скачиваний:
4
Добавлен:
27.09.2025
Размер:
22.97 Mб
Скачать

84

Часть I. Введение в Excel

Применение имен к существующим ссылкам

Когда ячейке или диапазону ячеек назначается имя, Excel не сможет автоматически использовать его вместо ссылок на ячейку или диапазон, которые уже содержатся в формулах. Предположим, в ячейке F10 находится такая формула:

=А1-А 2

Если для А1 вы зададите имя Доходы, а для А2 — Расходы, то формула автомати­ чески не будет превращена в следующую формулу:

=Доходы-Расходы

Впрочем, заменить именами ссылки на ячейки и диапазоны несложно. Вначале выде­ лите диапазон, в котором необходимо сделать изменения. Затем выполните команду

Формулы^Определенные имена*=>Присвоить имя (Formulas^Defined Names^Apply Names). В появившемся диалоговом окне выделите имена, которые следует применить при замене, и щелкните на кнопке ОК. В результате все ссылки на ячейки и диапазоны, имеющие имена, будут заменены ссылками на имена.

Скрытые имена

Отдельные макросы и надстройки Excel создают скрытые имена. Так называются имена, которые находятся в рабочей книге, но не отображаются в диалоговом окне Диспетчер имен (Name Manager). Например, большое количество скрытых имен созда­ ет надстройка Поиск решения (Solver). Эти скрытые имена можно игнорировать. Впро­ чем, иногда они создают проблему. При копировании листа в другую рабочую книгу ко­ пируются также скрытые имена, создавая трудно обнаруживаемые ссылки.

Для удаления из рабочей книги всех скрытых имен используйте следующую проце­ дуру VBA.

Sub

D e le te H id d e n N a m e s ()

 

 

Dim

n

As

Name

 

 

 

Dim

Count

As

In t e g e r

 

 

F o r

Each

n In

A ctiveW o rkb o o k .N am es

 

I f

N o t

n . V i s i b le

Then

 

 

 

n . D e le te

 

 

 

 

Count =

Count

+ 1

 

End

I f

 

 

 

 

N e x t

n

 

 

 

 

 

MsgBox

Count

& " скрытых имен уд ал е н о ."

End

Sub

 

 

 

 

 

Примечание

К сожалению, не существует способа “отключения” имен. Другими словами, если в формуле используется имя, его нельзя преобразовать в явную ссылку на ячейку либо диапазон. Хуже того, если удалить имя, используемое в формуле, то программа не вернется к обычному способу адресации ячейки или диапазона ### и выведет сообщение об ошибке #имя?.

Воспользуйтесь разработанной мною настройкой Power Utility Рак, в состав которой входит утилита, сканирующая все формулы в выделенной области, автоматически заменяя имена адресами ячеек.

Глава3. Особенности формул

85

Пересечение имен

В программе Excel существует специальный оператор пересечения. Он вступает в действие, когда возникает необходимость в управлении несколькими диапазонами яче­ ек. Этим оператором является символ пробела. Используя оператор пересечения вместе с именами, можно легко создавать достаточно содержательные формулы. Для наглядно­ го примера обратитесь к рис. 3.2. Если в ячейку ввести такую формулу:

=Квартал2 Юг

то результатом будет 7015 пересечение диапазонов Квартал 2 и Юг.

Присвоение имен столбцам и строкам

Программа Excel предоставляет возможность присваивать имена отдельным строкам и столбцам. В последнем примере имя Квартал 1 присвоено диапазону ВЗ:В6. Однако это имя можно присвоить всему столбцу В, имя Квартал2 — столбцу С и т.д. То же са­ мое можно сделать и по горизонтали: имя Север поставить в соответствие строке 3, Юг — строке 4 и т.д.

Оператор пересечения используется в данном случае так же, как и раньше, но теперь в рабочий лист можно добавлять другие регионы или кварталы, не изменяя при этом су­ ществующих имен.

Присваивая имена столбцам и строкам, проверяйте, чтобы в самих строках и столб­ цах не было лишних данных. Помните, что если вы, например, вставите значение в ячей­ куС7, то оно попадет в диапазон Квартал 1.

Определение области действия

Областью действия именованной ячейки или диапазона обычно является рабочая кни­ га. Другими словами, имя можно использовать на любом рабочем листе рабочей книги.

Существует и другой вариант — создание имен, областью действия которых является рабочий лист. Для этого перед самим именем должно стоять имя рабочего листа, а за ним— восклицательный знак (например, Лист1!Продажи). Если имя применяется втом листе, для которого оно предназначено, то при обращении к нему упоминание о рабочем листе можно опустить. Впрочем, обращаться можно и к тем именам уровня ра­ бочего листа, которые определены в другом листе. В таком случае перед выбранным именем следует добавить имя рабочего листа.

Диалоговое окно Диспетчер имен (Name Manager) (вызывается командой Формулы^ Определенные имена^Диспетчер имен (Formulas^Defined Names^Name Manager)) обеспечивает идентификацию имен по их области действия (рис. 3.3). Обратите внима­ ние на возможность сортировки имен в этом диалоговом окне. Например, достаточно щелкнуть на заголовке столбца Область (Scope), и будет выполнена соответствующая сортировка.

Присвоение имен константам

Каждый опытный пользователь Excel знает, как создавать имена ячеек и диапазонов (хотя не все пользователи Excel применяют это на практике). Заметим, что, кроме всего прочего, имена можно применять для обращения к значениям, которые не встречаются в рабочем листе (т.е. для обращения к константам).