Макрофункции (Command Function) - это функции листа макросов Excel
4.0, до сих пор поддерживаемый Microsoft для
совместимости с предыдущими версиями Excel.
Лист макросов XLM (который еще называется листом
макросов MS Excel 4.0) в сущности являлся тем же рабочим листом, но со своими
стандартными настройками. В частности, на листе макросов XLM отображаются
сами формулы, а не их результаты. Кроме того, стандартная ширина его столбцов
больше, чем у обычного рабочего листа. Как можно понять из названия, лист
макросов XLM предназначен для хранения макросов XLM. Система макросов XLM
является "пережитком”, доставшимся нам от предыдущих версий Excel (4.0 и
более ранних). До появления Excel 5 разработчиками использовался язык
макросов под названием XLM (Excel Macro). Более
поздние версии Excel все еще выполняют макросы XLM, но, начиная с Excel 97,
пользователи не имеют возможности записывать макросы на языке XLM.
На рисунке показано как выглядел лист макросов и
записанный на нём макрос (Макрос управляет выделенными ячейками. Он изменяет
цвет фона ячеек и добавляет к ним границы):

А так этот же макрос, записанный на языке VBA, выглядит сейчас (в стандартном
модуле):

Сейчас макрофункции можно использовать при написании
макросов и некоторые из них в именах листа/книги. Приведу простой пример
использования макрофункции ВЫЧИСЛИТЬ() в имени листа. На
листе 1 есть вот такие текстовые данные:

Как получить результат их работы? С помощью макрофункции ВЫЧИСЛИТЬ() очень
просто. Создаём имя (всё-равно каким способом, я выбрал через диспетчер
имён, Ctrl+F3). Присваиваем ему название (я выбрал EVALUATE -
ВЫЧИСЛИТЬ по английски). В поле Диапазон вставляем функцию ВЫЧИСЛИТЬ(),
в качестве аргумента вводим ссылку на левую верхнюю ячейку диапазона с
данными (это важно!), в нашем случае это ячейка А1. Если ссылку
Вы ввели, кликнув мышкой на ячейку, то по умолчанию она будет абсолютной.
Измените её на относительную. Сохраняем имя.

Теперь в ячейку В1 вводим созданное имя:

Жмём Enter и копируем В1 вниз:

Вот и искомый результат.
Особенностью макрофункций является то
что они, в отличии от функций листа, могут выполнять действия, работать с
форматированием, возвращать данные операционной системы, отправлять файлы по
почте и многое другое, что не умеют функции листа.
К минусам макрофункций можно отнести
следующее:
- макрофункции не работают на листе;
- для работы макрофункций макросы должны быть разрешены.
Макрофункции не делятся на категории, поэтому ниже
представлен список макрофункций по алфавиту (начинающихся на K, X и Y
макрофункций не существует):
            
            
|