Оглавление:
Видео: Excel VBA - Create Functions 2025
Здесь вы найдете несколько простых пользовательских функций Excel VBA, которые также очень полезны. Эти функции называются оберточными функциями , поскольку они состоят из кода, который обернут вокруг собственных элементов VBA. Другими словами, они позволяют использовать функции VBA в формулах рабочих таблиц.
Функция User () 'Возвращает имя текущего пользователя User = Application. Функция конечного пользователя UserName
Эта функция, по сути, позволяет вашим формулам получать доступ к свойству UserName объекта Application.
Функция NumberFormat
Эта функция просто отображает формат номера для ячейки. Это может быть полезно, если вам нужно убедиться, что группа ячеек имеет одинаковый формат номера.
Функция NumberFormat (Cell) 'Возвращает формат номера ячейки NumberFormat = Cell (1). NumberFormat End Function
Обратите внимание на использование Cell (1)? Если в качестве аргумента используется многосегментный диапазон, используется только первая ячейка.
Вы можете легко написать похожие функции, которые возвращают цвет текста, цвет фона, шрифт и т. Д.
Функция ExtractElement
Эта функция-обертка возвращает подстроку из текстовой строки, содержащей несколько элементов, разделенных символом-разделителем. Например, эта формула возвращает корову, которая является третьим элементом в строке, которая использует пространство в качестве разделителя. Разумеется, аргументами могут быть ссылки на ячейки.
= ExtractElement («собака лошади коровьего кота», 3, «»)
Вот код, который является оберткой для функции Split VBA:
Функция ExtractElement (Txt, n, Sep) «Возвращает n-й элемент текстовой строки, где« элементы разделены указанным символом-разделителем ExtractElement = Split (приложение. Trim (Txt), Sep) (n-1) End Function
Ниже показано изображение функция ExtractElement, используемая в формулах рабочих таблиц. Столбец A содержит текстовую строку, столбец B содержит номер элемента, который нужно извлечь, а столбец C содержит разделитель (ячейки, которые кажутся пустыми, содержат пробельный символ).
Функция SayIt
Эта простая функция является оболочкой для метода Speak приложения. Речевой объект. Он использует синтезированный голос для «обсуждения» аргумента.
Функция SayIt (txt) 'Говорит аргумент Application. Речь. Speak txt, True End Function
Вот пример:
= IF (C10> 10000, SayIt («Over budget»), «OK»)
Формула проверяет ячейку C10. Если значение больше 10 000, функция говорит по тексту: «Свыше бюджета.«Если значение меньше 10 000, функция отображает текст OK (и ничего не говорит).
Используйте экономно. Если вы используете эту функцию более одного раза, это может быть очень запутанным. Кроме того, помните, что эта функция оценивается каждый раз, когда рабочий лист вычисляется, поэтому голос может стать очень раздражающим, если вы делаете много изменений. Эта функция, вероятно, больше подходит для развлекательных целей.
Функция IsLike
Оператор VBA Like - очень гибкий способ сравнения текстовых строк. Проверьте это в справочной системе VBA. Эта функция приносит эту силу вашим формулам рабочего листа:
Функция IsLike (текст, шаблон) 'Возвращает true, если первый аргумент похож на второй IsLike = текст Like pattern End Function
