Даже если вы не умеете программировать, то существует множество мест (книги, сайты, форумы), где можно найти готовый код макросов на VBA для огромного количества типовых задач в Excel. По моему опыту, большинство пользователей рано или поздно собирают свою личную коллекцию макросов для автоматизации рутинных процессов, будь то перевод формул в значения, вывод суммы прописью или суммирования ячеек по цвету. И тут встает проблема — код макросов на Visual Basic нужно где-то хранить, чтобы потом использовать в работе.
Самый простой вариант — сохранять код макросов прямо в рабочем файле, зайдя в редактор Visual Basic с помощью сочетания клавиш Alt+F11 и добавив новый пустой модуль через меню Insert — Module:
При таком способе возникает, однако, несколько неудобств:
- Если рабочих файлов много, а макрос нужен везде, как например макрос преобразования формул в значения, то и копировать код придется в каждую книгу.
- Нужно не забыть сохранить файл в формате с поддержкой макросов (xlsm) или в формате двоичной книги (xlsb).
- При открытии такого файла защита от макросов будет каждый раз выдавать предупреждение, которое нужно подтвердить (ну, или отключить защиту полностью, что может быть не всегда желательно).
Более изящным решением будет создание своей собственной надстройки (Excel Add-in) — отдельного файла особого формата (xlam), содержащего все ваши «любимые» макросы. Плюсы такого подхода:
- Достаточно будет один раз подключить надстройку в Excel — и можно будет использовать её VBA процедуры и функции в любом файле на этом компьютере. Пересохранять ваши рабочие файлы в xlsm- и xlsb-форматы, таким образом, не потребуется, т.к. исходный код будет храниться не в них, а в файле надстройки.
- Защита от макросов вас тоже беспокоить уже не будет, т.к. надстройки по определению входят в доверенные источники.
- Можно сделать отдельную вкладку на ленте Excel с красивыми кнопками для запуска макросов надстройки.
- Надстройка — это отдельный файл. Его легко переносить с компьютера на компьютер, делиться им с коллегами или даже продавать
Давайте рассмотрим весь процесс создания своей собственной надстройки для Microsoft Excel по шагам.
Шаг 1. Создаем файл надстройки
Открываем Microsoft Excel с пустой книгой и сохраняем ее под любым подходящим именем (например MyExcelAddin) в формате надстройки с помощью команды Файл — Сохранить как или клавиши F12, указав тип файла Надстройка Excel (Excel Add-in):
Обратите внимание, что стандартно Excel хранит надстройки в папке C:UsersВаше_имяAppDataRoamingMicrosoftAddIns, но, в приниципе, можно указать любую другую удобную вам папку.
Шаг 2. Подключаем созданную надстройку
Теперь созданную нами на прошлом шаге надстройку MyExcelAddin надо подключить к Excel. Для этого идем в меню Файл — Параметры — Надстройки (File — Options — Add-Ins), жмем на кнопку Перейти (Go) в нижней части окна. В открывшемся окне жмем кнопку Обзор (Browse) и указываем положение нашего файла надстройки.
Если вы все сделали правильно, то наша MyExcelAddin должна появиться в списке доступных надстроек:
Шаг 3. Добавляем в надстройку макросы
Наша надстройка подключена к Excel и успешно работает, но в ней нет пока ни одного макроса. Давайте её наполним. Для этого нужно открыть редактор Visual Basic сочетанием клавиш Alt+F11 или кнопкой Visual Basic на вкладке Разработчик (Developer). Если вкладки Разработчик не видно, то её можно отобразить через Файл — Параметры — Настройка ленты (File — Options — Customize Ribbon).
В левом верхнем углу редактора должно быть окно Project (если его не видно, то включите его через меню View — Project Explorer):
В этом окне отображаются все открытые книги и запущенные надстройки Microsoft Excel, в том числе и наша VBAProject (MyExcelAddin.xlam) Выделите её мышью и добавьте в неё новый модуль через меню Insert — Module. В этом модуле мы и будем хранить VBA-код наших макросов надстройки.
Код можно либо набрать «с нуля» (если вы умеете программировать), либо скопировать откуда-нибудь уже готовый (что гораздо проще). Давайте, для пробы, введем в добавленный пустой модуль код простого, но полезного макроса:
После набора кода не забудьте нажать на кнопку сохранения (дискетку) в левом верхнем углу.
Наш макрос FormulasToValues, как легко сообразить, преобразует формулы в значения в выделенном предварительно диапазоне. Иногда такие макросы называют еще процедурами. Чтобы его запустить, нужно выделить ячейки с формулами и открыть специальное диалоговое окно Макросы с вкладки Разработчик (Developer — Macros) или сочетанием клавиш Alt+F8. Обычно в этом окне отображаются доступные макросы из всех открытых книг, но макросы надстроек здесь не видны. Несмотря на это, мы можем ввести имя нашей процедуры в поле Имя макроса (Macro name), а затем нажать кнопку Выполнить (Run) — и наш макрос заработает:
Здесь же можно назначить сочетание клавиш для быстрого запуска макроса — за это отвечает кнопка Параметры (Options) в предыдущем окне Макрос:
При назначении клавиш имейте ввиду, что здесь учитывается регистр и раскладка клавиатуры. Поэтому, если вы назначите сочетание, например, Ctrl+Й, то, по факту, вам придется в будущем следить за тем, чтобы у вас была включена именно русская раскладка и жать дополнительно Shift, чтобы получить заглавную букву.
Для удобства можно добавить и кнопку для нашего макроса на панель быстрого доступа в левом верхнем углу окна. Для этого выберите Файл — Параметры — Панель быстрого доступа (File — Options — Customize Quick Access Toolbar), а затем в выпадающем списке в верхней части окна опцию Макросы. После этого наш макрос FormulasToValues можно поместить на панель кнопкой Добавить (Add) и выбрать для него значок кнопкой Изменить (Edit):
Шаг 4. Добавляем в надстройку функции
Кроме макросов-процедур, существуют еще и макросы-функции или как их еще называют UDF (User Defined Function = пользовательская функция). Давайте создадим в нашей надстройке отдельный модуль (команда меню Insert — Module) и вставим туда код такой функции:
Несложно сообразить, что эта функция нужна для извлечения НДС из суммы включающей НДС. Не бином Ньютона, конечно, но нам для примера сгодится, чтобы показать основные принципы.
Заметьте, что синтаксис функции отличается от процедуры:
- используется конструкция Function …. End Function вместо Sub … End Sub
- после названия функции в скобках указываются её аргументы
- в теле функции производятся необходимые вычисления и затем результат присваивается переменной с названием функции
Также обратите внимание, что эту функцию не нужно, да и невозможно запустить как предыдущий макрос-процедуру через диалоговое окно Макросы и кнопку Выполнить. Такую макрофункцию нужно использовать как стандартную функцию листа (СУММ, ЕСЛИ, ВПР…), т.е. просто ввести в любую ячейку, указав в качестве аргумента значение суммы с НДС:
… или ввести через стандартное диалоговое окно вставки функции (кнопка fx в строке формул), выбрав категорию Определенные пользователем (User Defined):
Единственный неприятный момент здесь — это отсутствие привычного описания функции в нижней части окна. Чтобы его добавить придется проделать следующие действия:
- Откройте редактор Visual Basic сочетанием клавиш Alt+F11
- Выделите надстройку в панели Project и нажмите клавишу F2, чтобы открыть окно Object Browser
- Выберите в верхней части окна в выпадающем списке свой проект надстройки
- Щелкните по появившейся функции правой кнопкой мыши и выберите команду Properties.
- Введите описание функции в окно Description
- Сохраните файл надстройки и перезапустите Excel.
После перезапуска у функции должно отобразиться описание, которое мы ввели:
Шаг 5. Создаем вкладку надстройки в интерфейсе
Финальным, хоть и не обязательным, но приятным штрихом будет создание отдельной вкладки с кнопкой запуска нашего макроса, которая будет появляться в интерфейсе Excel после подключения нашей надстройки.
Информация об отображаемых вкладках по умолчанию содержится внутри книги и должна быть оформлена в виде специального XML-кода. Проще всего писать и редактировать такой код с помощью специальных программ — XML-редакторов. Одна из самых удобных (и бесплатных) — это программа Максима Новикова Ribbon XML Editor.
Алгоритм работы с ней следующий:
- Закройте все окна Excel, чтобы не было конфликта файлов, когда мы будем редактировать XML-код надстройки.
- Запустите программу Ribbon XML Editor и откройте в ней наш файл MyExcelAddin.xlam
- При помощи кнопки tabs в левом верхнем углу добавьте заготовку кода для новой вкладки:
- В пустые кавычки нужно вписать id нашей вкладки и группы (любые уникальные идентификаторы), а в label — названия нашей вкладки и группы кнопок на ней:
- При помощи кнопки button на панели слева добавляем заготовку кода для кнопки и дописываем к ней теги:
— label — это текст на кнопке
— imageMso — это условное название изображения на кнопке. Я использовал иконку с красной кнопкой, которая имеет название AnimationCustomAddExitDialog. Названия всех доступных кнопок (а их несколько сотен!) можно найти на большом количестве сайтов в интернете, если искать по ключевым словам «imageMso». Для начала можно сходить сюда.
— onAction — это имя процедуры обратного вызова — специального короткого макроса, который будет запускать наш основной макрос FormulasToValues. Назвать эту процедуру можно как угодно. Мы добавим её чуть позже. - Проверить правильность всего сделанного можно с помощью кнопки с зеленой галочкой сверху на панели инструментов. Там же рядом нажмите на кнопку с дискетой для сохранения всех изменений.
- Закрываем Ribbon XML Editor
- Открываем Excel, заходим в редактор Visual Basic и добавляем к нашему макросу процедуру обратного вызова KillFormulas, чтобы она запускала наш основной макрос замены формул на значения.
- Сохраняем внесенные изменения и, вернувшись в Excel проверяем результат:
Вот и всё — надстройка готова к использованию. Наполните её своими процедурами и функциями, добавьте красивые кнопки — и использовать макросы в работе станет намного проще.
Ссылки по теме
- Что такое макросы, как их использовать в работе, где взять код макросов на Visual Basic.
- Как сделать заставку при открытии книги в Excel
- Что такое Личная Книга Макросов и как её использовать
На чтение 14 мин. Просмотров 6.3k.
В Excel более 450 функций, и некоторые из них весьма полезны в вашей повседневной работе.
Но… Excel дает вам возможность создавать пользовательские функции с помощью VBA.
Да — да, вы не ослышались. Пользовательская функция.
И я могу сказать со 100%-ой уверенностью, что каждый начинающий пользователь VBA хочет научиться создавать пользовательские функции. Не так ли? Кивните, если вы один из них.
Итак, сегодня я собираюсь поделиться всем, что вам нужно знать о создании Пользовательской функции.
… так что оставайтесь со мной, вы станете рок-звездой VBA в ближайшие пару минут.
Содержание
- Зачем вам создавать пользовательскую функцию Excel?
- Как создать свою первую пользовательскую функцию в Excel
- Как эта функция работает и возвращает значение в ячейке
- Как улучшить пользовательскую функцию?
- Как использовать пользовательскую функцию VBA
- Различные способы создания пользовательской функции VBA
- Область действия определяемой пользователем функции
- Ограничения пользовательской функции
- Заключение
Зачем вам создавать пользовательскую функцию Excel?
Как я уже сказал, в Excel много функций, которые могут помочь вам решить практически все проблемы и выполнить все виды расчетов. Но…
… Иногда в определенных ситуациях вам нужно создать пользовательскую.
Вот некоторые причины, почему вам нужно перейти к пользовательской функции.
1. Когда нет подходящей функции
Иногда бывает, что вам нужно что-то вычислить, и для этого нет подходящей встроенной функции.
Например, подсчет слов в ячейке, в этом случае пользовательская функция — идеальное решение.
Function MyWordCount(rng As Range) As Integer MyWordCount = UBound(Split(rng.Value, " "), 1) + 1 End Function
2. Заменить сложную формулу
Если вы работаете с формулами, то вы знаете, что сложные формулы бывает трудно читать самому, а другим пользователем еще сложнее.
Пользовательская функция может решить эту проблему.
Такая функция поможет вам избежать долгих вычислений. Как только вы создадите функцию, вам не нужно будет писать эту сложную формулу снова и снова.
3. Когда вы не хотите использовать SUB
Хотя вы можете использовать код VBA для выполнения расчетов, но коды VBA не динамические.
Вам нужно снова запустить этот код, если вы хотите обновить свой расчет.
Но если вы преобразуете этот код в функцию, вам не нужно будет запускать этот код снова и снова.
Как создать свою первую пользовательскую функцию в Excel
Обычно для создания функции VBA необходимо выполнить следующие шаги:
- Объявить вашу процедуру как функцию
- Определить ее аргументы и их тип данных
- Добавить код для расчета желаемого значения
Позвольте мне привести вам простой пример.
Вам необходимо создать функцию, которая может возвращать название дня недели из значения даты.
Да, у нас есть функция, которая возвращает номер дня недели, но не название.
Итак, давайте создадим эту функцию VBA, используя следующие шаги.
- Прежде всего, откройте редактор VB с помощью сочетания клавиш ALT + F11 или перейдите на вкладку «Разработчик» и нажмите кнопку «Visual Basic».
- Вставка модуля: щелкните правой кнопкой мыши в окне проекта VBA, затем перейдите к Insert и после этого нажмите «Module».
- Следующим шагом является определение имени для функции, здесь я использую «myDayName». Поэтому вы должны написать «Function mydayName».
Почему «Function» перед именем?
Поскольку вы создаете функцию VBA, то используете слово «Function». Excel понимает, что этот код следует рассматривать как функцию
- После этого вам нужно определить аргументы для пользовательской функции. Поэтому вставьте начальные скобки и напишите «InputDate As Date».
- Здесь InputDate — имя аргумента, а date — его тип данных. Всегда лучше определить тип данных для аргумента.
- Теперь закройте скобки и напишите «As String». Здесь вы определяете тип данных результата, возвращаемого функцией. Так как вы хотите, чтобы название дня недели было текстовым, его тип данных должен быть «String».
- В конце нажмите ENTER.
На этом этапе имя вашей функции, ее аргумент, тип данных аргумента и тип данных функции определены, и у вы должны видеть что-то вроде этого в вашем модуле:
Теперь между «Function» и «End Function» вам нужно сделать расчет.
В Excel есть функция рабочего листа под названием «Text», давайте используем ее здесь. Для этого вам нужно написать следующий код:
myDayName = WorksheetFunction.Text (InputDate, "dddddd")
С помощью этого кода вы определяете значение, которое должно быть возвращено функцией.
- Теперь закройте редактор VB и вернитесь к рабочему листу.
- В ячейке B2 введите «= myDayName (A2)», нажмите Enter, и у вы увидите название дня недели.
Поздравляю! Вы только что создали свою первую пользовательскую функцию!
Как эта функция работает и возвращает значение в ячейке
Вы создали свою первую пользовательскую функцию, но дело в том, что нужно еще понять, как она работает.
Можно сказать в двух словах, это код VBA, но мы используем его как функцию. Давайте разбираться.
- Вы вводите код в ячейку как функцию и указываете ссылку на ячейку
- Excel запускает код функции и использует значение, которое вы указали
- Вы получаете результат в ячейке
А теперь детали: в тот момент, когда вы вводите код в ячейку и ссылаясь на другую, код выполняется, используя указанное вами значение для возврата результата.
Давайте чуть медленнее:
Есть код для функции, которую мы создали, и вы знаете, что в этом коде. Правильно?
Когда вы ссылаетесь на ячейку в вашей функции, этот блок кода работает для вычисления значения. Он берет дату из аргумента InputDate и возвращает название дня недели.
Важно: когда вы пишете код для пользовательской функции, вам нужно позаботиться о том, чтобы значение, возвращаемое этим кодом, было присвоено имени функции.
Как улучшить пользовательскую функцию?
Вы уже знаете, как создать пользовательскую функцию VBA. Но…
Есть одна вещь, о которой вы должны позаботиться: код, который вы используете должен быть достаточно хорош, чтобы использовать все возможности.
Если говорить о функции, которую вы только что написали выше, да вы можете вернуть название дня недели из даты. Но… Что если указанное вами значение не будет датой? А если указанная вами ячейка пуста?
Могут быть и другие проблемы, но я уверен, что вы поняли, о чем я.
Итак, давайте попробуем улучшить эту пользовательскую функцию, чтобы она смогла справиться с вышеуказанными проблемами.
Прежде всего, вам нужно изменить тип данных аргумента и использовать:
Так ваша пользовательская функция сможет принимать любой тип данных в качестве входных данных.
Далее нам нужно использовать оператор VBA IF, чтобы проверить InputDate для некоторых условий. Первое условие — пустая ячейка или нет. И для этого вам нужно использовать следующий код:
If InputDate = "" Then myDayName = ""
Функция ничего не будет возвращать, если указанная вами ячейка будет пустой. Одна проблема решена, давайте перейдем к следующей.
Помимо даты есть возможности, что значение может быть числом или текстом. Поэтому необходимо создать условие, которое будет проверять, является ли указанное значение действительной датой или нет. Код такой:
If IsDate (InputDate) = False Then myDateName = ""
Примечание. Здесь я использую пробел для обоих условий, чтобы при наличии больших данных можно было легко отфильтровать значения, если входное значение недопустимо.
Таким образом, после добавления вышеуказанных условий код будет выглядеть так:
Функция myDayName (InputDate As Variant) в виде строки
Function myDayName(InputDate As Variant) As String If InputDate = "" Then myDayName = "" Else If IsDate(InputDate) = False Then myDateName = "" Else myDayName = WorksheetFunction.Text(InputDate, "dddddd") End If End If End Function
Я думаю, что вы можно внести еще некоторые изменения в эту функцию, но я уверен, что суть вы уловили.
Как использовать пользовательскую функцию VBA
Научившись создавать функцию VBA в Excel, нужно узнать, как вы можете ее использовать. И в этой части статьи я расскажу вам, как и где вы можете это делать.
Итак, давайте начнем.
1. На рабочем листе
Почему мы создаем пользовательскую функцию? Чтобы использовать ее на рабочем листе. Вы можете просто использовать ПФ на листе, используя знак равенства и введя имя функции, а затем указав ее аргументы.
Вы также можете ввести пользовательскую функцию из библиотеки функций.
Перейдите на вкладку «Формулы» ➜ «Вставить функцию» ➜ «Определенные пользователем».
Из списка можно выбрать функцию, которую хотите вставить.
2. Использование в других подпроцедурах и функциях
Вы также можете использовать функцию в других функциях или в процедуре «Sub».
Ниже приведен код VBA, в котором мы использовали функцию, чтобы получить название дня недели для текущей даты.
Sub todayDay() MsgBox "Сегодня " & myDayName(Date) End Sub
3. Доступ к функциям из другой книги
Если у вас есть ПФF в одной рабочей книге и вы хотите использовать его в другой или во всех рабочих книгах, вы делаете это путем создания надстройки для нее. Выполните следующие простые шаги:
- Прежде всего, вам нужно сохранить файл (в котором у вас есть код пользовательской функции) в виде надстройки.
- Для этого перейдите на вкладку «Файл» ➜ «Сохранить как» ➜ «Надстройки Excel (.xalm)».
- После этого дважды щелкните на надстройку и установите ее.
- нажмите добавить, чтобы добавить все определенные пользователем функции в другую книгу
Теперь вы можете использовать все свои функции VBA в любой книге.
Различные способы создания пользовательской функции VBA
Когда мы используем встроенные функции, они имеют разные типы аргументов. В этом разделе руководства вы узнаете, как создать ПФ с аргументами другого типа.
- без каких-либо аргументов
- только с одним аргументом
- с несколькими аргументами
- использование массива в качестве аргумента
1. Без каких-либо аргументов
Помните есть такие функции, как СЕЙЧАС и СЕГОДНЯ, в которых вам не нужно вводить какие-либо аргументы? Вы можете создать пользовательскую функцию, в которой вам тоже не нужно вводить аргумент. Сделаем это на примере:
Давайте создадим пользовательскую функцию, которая может возвращать местоположение текущего файла.
Вот код:
Function myPath() As String Dim myLocation As String Dim myName As String myLocation = ActiveWorkbook.FullName myName = ActiveWorkbook.Name If myLocation = myName Then myPath = "Файл еще не сохранен." Else myPath = myLocation End If End Function
Эта функция возвращает путь к месту, где хранится текущий файл, и, если рабочая книга нигде не сохранена, будет отображаться сообщение «Файл еще не сохранен».
Теперь, если вы обратите пристальное внимание на код этой функции, вы не увидите ни одного аргумента (в скобках). Вы определяете тип данных для результата функции. Основное правило создания функции без аргументов — это код, в который вам не нужно ничего вводить. Проще говоря, значение, которое вы хотите получить взамен функции, должно вычисляться автоматически.
Этот код «ActiveWorkbook.FullName» возвращает местоположение файла, а этот «ActiveWorkbook.Name» возвращает имя. Так что здесь вам не нужно ничего вводить.
2. Только с одним аргументом
Мы уже рассмотрели эту ситуацию, изучая, как создать пользовательскую функцию. Но давайте копнем немного глубже и создадим другую функцию.
Это функция нужна для извлечения URL-адреса из гиперссылки.
Function giveMeURL(rng As Range) As String On Error Resume Next giveMeURL = rng.Hyperlinks(1).Address End Function
В этой функции у вас есть только один аргумент.
Когда вы напишите функцию, а затем укажите ячейку, в которой у вас есть гиперссылка, она вернет URL-адрес.
Теперь в этой функции основная работа выполняется:
rng.Hyperlinks (1) .Address
rng - это то, что вам нужно указать.
3. С несколькими аргументами
Обычно большинство встроенных функций Excel имеют несколько аргументов. Поэтому вам необходимо узнать, как создать пользовательскую функцию с несколькими аргументами. Давайте рассмотрим пример:
Вы хотите удалить определенные буквы из текстовой строки и получить оставшуюся часть. У вас есть такие функции, как RIGHT и LEN, которые вы собираетесь использовать в этой пользовательской функции. Но здесь они нам не понадобятся. Все, что нам нужно, это пользовательская функция, использующая VBA.
Итак, вот функция:
Function removeFirstC(rng As String, cnt As Long) As String removeFirstC = Right(rng, Len(rng) - cnt) End Function
Итак, посмотрим:
В этой функции у вас два аргумента:
- rng: в этом аргументе вам нужно указать ячейку, из которой вы хотите удалить символ текста.
- cnt: а в этом аргументе вам нужно указать количество символов для удаления (если вы хотите удалить более одного символа из текста).
Когда вы вводите ее в ячейку, она работает примерно так:
3.1 Создание пользовательской функции с необязательным и обязательным аргументом
Если говорить о функции, которую мы только что создали в приведенном выше примере, где у нас было два разных аргумента, то они оба обязательны. Если вы пропустите любой из них, вы получите такую ошибку.
Но можно сделать этот аргумент необязательным, чтобы он принимал значение по умолчанию. Чтобы сделать аргумент необязательным, вам просто нужно добавить «Optional» перед ним.
4. Использование массива в качестве аргумента
Есть несколько встроенных функций, которые могут принимать аргументы в виде массива, также вы можете сделать свою собственную функцию VBA. Давайте рассмотрим простой пример: вам нужно создать функцию, в которой вы суммируете значения из диапазона, в котором у вас есть числа и текст.
Function addNumbers(CellRef As Range) Dim Cell As Range For Each Cell In CellRef If IsNumeric(Cell.Value) = True Then Result = Result + Cell.Value End If Next Cell addNumbers = Result End Function
В приведенном выше коде функции мы использовали весь диапазон A1: A10 вместо одного значения или ссылки на ячейку.
Используем цикл FOR EACH, он проверяет каждую ячейку диапазона и суммирует значение, если в ячейке есть число.
Область действия определяемой пользователем функции
Проще говоря, область действия функции означает, может ли она вызываться из других процедур или нет. UDF может иметь два разных типа областей действия:
1. Public
Вы можете сделать свою пользовательскую функцию общедоступной, чтобы ее можно было вызывать во всех рабочих листах рабочей книги. Для этого вам просто нужно использовать слово «Public», как показано ниже.
Функция является Public по умолчанию, если вы не делаете ее Private. Во всех приведенных нами примерах все функции общедоступны.
2. Private
Когда вы делаете функцию Private, вы можете использовать ее в процедурах того же модуля.
Допустим, если у вас есть функция в «Module1», вы можете использовать ее только в процедурах, которые вы используете в «Module1». И она не появится в списке функций на рабочем листе (когда вы используете знак = и пытаетесь ввести имя), но вы все равно можете использовать ее, введя ее название полностью и указав аргументы.
Ограничения пользовательской функции
Пользовательские функции супер полезны. Но они ограничены в некоторых ситуациях. Вот несколько вещей, которые нужно записать и запомнить при создании пользовательской функции в VBA:
- Вы не можете изменять, удалять или форматировать ячейки и диапазон с помощью пользовательской функции.
- Также нельзя перемещать, переименовывать, удалять или добавлять рабочие листы в рабочую книгу.
- Не сможете вносить изменения в значение другой ячейки.
Есть ли разница между встроенной функцией и пользовательской функцией?
Чтобы ответить на этот вопрос, я хочу поделиться некоторыми моментами, которые, на мой взгляд, важны.
- Медленнее, чем встроенная. Если вы сравните скорость встроенных функций и функции VBA, вы обнаружите, что первые быстрее. Причина в том, что встроенные функции написаны с использованием C ++ или FORTRAN.
- Трудно обмениваться файлами. Мы часто обмениваемся файлами по электронной почте и в облаке, поэтому, если вы используете какую-либо из пользовательских функций, вам необходимо поделиться этим файлом в формате «xlam», чтобы другой человек также мог использовать вашу пользовательскую функцию.
Но все равно, есть ситуации, когда пользовательские функции будут незаменимы.
Заключение
Создать пользовательскую функцию просто.
Все, что вам нужно сделать, это использовать «Function» перед названием, чтобы определить его как функцию, добавить аргументы, определить тип данных аргументов, а затем определить тип данных для возвращаемого значения.
В конце добавьте код, чтобы вычислить значение, которое вы хотите получить от функции.
Это самое простое руководство, как создать пользовательскую функцию в VBA, и я надеюсь, вы нашли ее полезной.
Один из посетителей нашего сайта оставил идею сделать в Excel кнопку, по которой можно было бы переходить в Контакт, просто и удобно. Идею поддержали еще 4 человека и мы решили привести простой пример реализации этой задумки.
Сегодня мы рассмотрим как написать собственный макрос, функцию, произвести установку надстройки и попробуем создать собственную вкладку в ленте Excel.
Итак, задача: добавить в Excel, возможность выхода вКонтакт.
Для этого нам потребуется объявить обозреватель, открыть его и перейти по ссылке ресурса.
Создадим функцию VK для выхода в Контакт:
Function vk()
Dim ie As Object
Set ie = CreateObject(«InternetExplorer.Application»)
ie.Visible = True
ie.Navigate «http://vkontaktui.ru/»
End Function
где http://vkontaktui.ru/ — анонимайзер Контакта (если на работе Контакт закрыт), можно подставить привычный http://vk.com/ или любой другой сайт.
Копируем в наш документ:
функция перехода в Контакт
Теперь переходим на любой лист Excel и пишем формулу =vk() после ввода формулы в любую ячейку и нажатия кнопки Enter будет открываться IE с указанным адресом.
Второй вариант.
Для удобства использования пропишем функцию в Макрос:
Sub vkcom()
Function vk()
Dim ie As Object
Set ie = CreateObject(«InternetExplorer.Application»)
ie.Visible = True
ie.Navigate «http://vkontaktui.ru/»
End Sub
функция в макросе
Теперь у нас есть несколько больше возможностей по использованию функции вызова EI. Например, мы можем назначить макрос на кнопку:
Теперь сделаем из этого файла надстройку и разместим кнопки быстрого запуска в Ленте и На панели быстрого доступа.
Делается это очень просто. Сохраним makros.xlsm как mkrs.xlа (скачать mkrs.xla)
Откроем новый документ Excel. Перейдем в меню Файл >> Параметры >>Надстройки
появится новое окно:
Параметры Excel
В управлении выбираем «Надстройки Excel» и кликаем кнопку перейти. Появится новое окно «Надстройки» , через Обзор выбираем созданный файл mkrs.xlа:
Установка надстройки
Теперь выведем макрос на Панель быстрого доступа, сделаем это через меню Параметры :
И добавим новую вкладку на Ленту:
Лента
(Создаем вкладку, группу, называем как нам нравится и добавляем наш макрос).
теперь любой Excel на нашем компьютере будет иметь слегка измененный вид, в котором работает новая функция =VK() и две кнопки:
Excel с включенной надстройкой
Надеемся статья была вам полезна. Будем благодарны, если Вы нажмете +1 и/или Мне нравится или поделитесь с друзьями с помощью кнопок ниже. Если у Вас остались вопросы — задавайте!
Спасибо.
Загрузка надстройки «Пакет анализа» в Excel
Смотрите также идентификаторы), а в привычного описания функции макросНаш макросПерейти (Go) Add-in) закладке «Protection» в из выпадающего списка их множество. выполнять другие операции. формате или в Excel добавляются новые надстройки, которые не предоставляется компанией AnalystSoft. и перезапустите его..При проведении сложного статистическогоlabel
в нижней частиFormulasToValuesFormulasToValuesв нижней части- отдельного файла поле ввода «Password:» «Управление:» укажите наАвтор: Александр СорокинИспользуя данный набор макросов, формате даты и функции, команды, что используются или применяютсяКорпорация Майкрософт не поддерживаетТеперь на вкладкеЕсли или инженерного анализа- названия нашей
окна. Чтобы егоможно поместить на
-
, как легко сообразить, окна. В открывшемся особого формата (xlam), введите пароль для опцию «Надстройки Excel»Надстройки Excel – это можно отбирать строки
времени. характерно и для редко, необходимо выгружать. эти продукты.ДанныеПакет анализа можно упростить процесс
-
вкладки и группы добавить придется проделать панель кнопкой преобразует формулы в окне жмем кнопку содержащего все ваши защиты доступу к
и нажмите на прекрасная альтернатива создания на основе заданнойИспользуя данный набор макросов, других подобных макросов, Выгрузка удаляет командыНадстройки Excel позволяют задействоватьдоступна командаотсутствует в списке
-
и сэкономить время, кнопок на ней: следующие действия:Добавить (Add) значения в выделенномОбзор (Browse) «любимые» макросы. Плюсы макросам проекта рабочей
-
кнопку «Перейти». макросов доступных для ячейки. можно создавать Динамический но, помимо этого, и возможность запуска какие-то новые возможностиАнализ данных
-
поля используя надстройку «ПакетПри помощи кнопкиОткройте редактор Visual Basicи выбрать для предварительно диапазоне. Иногдаи указываем положение
-
такого подхода: книги. В полеВ появившемся диалоговом окне использования любых другихПри вводе формул показываются Именованный Диапазон. Он использование данного мини-приложения набора макросов в и свойства, которые.Доступные надстройки анализа». Для анализаbutton сочетанием клавиш Alt+F11 него значок кнопкой такие макросы называют нашего файла надстройки.
Достаточно будет ввода «Confirm password:» «Надстройки» нажмите на файлов рабочих книг. стрелки, отображающие зависимости. по образу и уменьшит затраты времени электронных таблицах, но не присущи по
Существует несколько сторонних надстроек,, нажмите кнопку данных с помощьюна панели слева
-
Выделите надстройку в панелиИзменить (Edit) ещеЕсли вы все сделалиодин раз подключить надстройку
-
введите пароль повторено кнопку «Обзор», а Если Вам понравиться Книгу и диапазон подобию таблиц в на выполнение однотипных не деинсталлирует саму умолчанию данной программе.
-
обеспечивающих функциональные возможностиОбзор этого пакета следует добавляем заготовку кода Project и нажмите:процедурами правильно, то наша
-
в Excel - и нажмите на после найдите и создавать свои надстройки ячеек можно очистить Word сжимается и действий, автоматизировав данный
-
надстройку по путиФайлы, содержащие подобные дополнения,
надстройки «Пакет анализа», чтобы выполнить поиск. указать входные данные для кнопки и клавишу F2, чтобы
-
Я не могу найти надстройку «Пакет анализа» в Excel для Mac 2011
Кроме. Чтобы его запустить,MyExcelAddin и можно будет
кнопку ОК. найдите свое название, и вы войдете от лишнего в расширяется при вводе вид работы. Данную установки, поэтому при имеют расширение xla в Excel 2011.Если появится сообщение о
-
и выбрать параметры; дописываем к ней
-
открыть окно Objectмакросов-процедур нужно выделить ячейкидолжна появиться в
-
использовать её VBAДаже если вы не
-
на против него во вкус, то любой момент времени. данных. Помимо того надстройку нельзя назвать
-
необходимости она может в версиях доВариант 1. том, что надстройка расчет будет выполнен теги: Browser, существуют еще и с формулами и списке доступных надстроек:
процедуры и функции умеете программировать, то поставьте галочки и это полезное иPlex позволяет менять местами что данный диапазон
просто макросом, это быть загружена снова. 2007 или xlam, Скачайте дополнительный компонент XLSTAT «Пакет анализа» не с помощью подходящей- label
-
Выберите в верхней частимакросы-функции открыть специальное диалоговое
-
Наша надстройка подключена к в любом файле существует множество мест нажмите на кнопку
-
интересное занятие может столбцы и строки, может использоваться в комплекс последних, что
После выгрузки доступность начиная с него
-
для Mac и установлена на компьютере, статистической или инженерной- это текст окна в выпадающемили как их окно
-
Excel и успешно на этом компьютере.
-
support.office.com
Надстройки Excel: обзор, особенности и требования
(книги, сайты, форумы), «Ок». Если вы еще для вас строить мини-гистограммы. Данная повседневной работе Excel,
Расширение надстроек
и называется набором. набора макросов остается соответственно. В данный используйте его в нажмите кнопку макрофункции, а результат на кнопке списке свой проект еще называютМакросы работает, но в Пересохранять ваши рабочие где можно найти не находите названия приносить неплохой доход.
Типы надстроек
надстройка позволяет осуществлять с его помощью
-
В состав программы
-
до момента перезапуска формат можно сохранять Excel 2011. XLSTAT содержитДа будет помещен в- imageMso надстройкиUDFс вкладки ней нет пока
-
файлы в xlsm-
Установка
готовый код макросов нажмите на кнопку Надстройки можно публиковать почтовую рассылку по можно создавать динамические входит более 25 Excel. и собственные файлы, более 200 базовых, чтобы ее установить. выходной диапазон. Некоторые- это условноеЩелкните по появившейся функции(Разработчик (Developer — Macros) ни одного макроса. и xlsb-форматы, таким
на VBA для «Обзор», чтобы указать и продавать в различным электронным адресам.
Загрузка и выгрузка
диаграммы и сводные макросов и 80К таким наборам макросов которые будут использоваться и расширенных статистическихПримечание: инструменты позволяют представить название изображения на правой кнопкой мышиUser Defined Function =или сочетанием клавиш Давайте её наполним.
образом, не потребуется, огромного количества типовых путь к вашему магазине Office Store. Большие таблицы могут таблицы. функций, среди которых относятся: как надстройки Excel. инструментов, включая все Для включения в «Пакет результаты анализа в кнопке. Я использовал и выберите команду пользовательская функция). Alt+F8. Обычно в Для этого нужно т.к. исходный код задач в Excel. файлу с надстройкой. В данном примере
Стандартные надстройки, идущие вместе с электронными таблицами
быть распределены наНа любую команду можно
- есть такие, как«Пакет анализа», с помощью Для этого при функции надстройки «Пакет анализа» функций Visual графическом виде. иконку с краснойPropertiesДавайте создадим в
- этом окне отображаются открыть редактор Visual будет храниться не По моему опыту,
- Надстройка VBA готова! Теперь мы покажем, как несколько страниц по назначить свои горячие ДАТАИЗСТРОКИ, ФАМИЛИЯ и которого Excel получает сохранении книги необходимо
- анализа». Basic для приложенийФункции анализа данных можно кнопкой, которая имеет
- . нашей надстройке отдельный доступные макросы из Basic сочетанием клавиш в них, а большинство пользователей рано во всех открытых
- создать свою достройку заданным условиям. Внешние клавиши. другие. возможность совершать статистические, в диалоговом окнеПерейдите на страницу скачивания (VBA) можно загрузить применять только на
- название AnimationCustomAddExitDialog. НазванияВведите описание функции в модуль (команда меню всех открытых книг, Alt+F11 или кнопкой в файле надстройки. или поздно собирают рабочих книгах можно с макросом, написанным
Надстройка VBA-Excel
связи книги могутЭта надстройка имеет полезноеУстановка осуществляется включением в инженерные или финансовые «Сохранить» выбрать «Тип XLSTAT. надстройку одном листе. Если всех доступных кнопок окноInsert — Module но макросы надстроекVisual BasicЗащита свою личную коллекцию будет воспользоваться макросами на коде самого быть разорваны или свойство по добавлению параметрах макросов, а функции, некоторые из файла» xlam.Выберите версию XLSTAT, соответствующуюПакет анализа VBA анализ данных проводится (а их несколькоDescription) и вставим туда здесь не видны.
на вкладкеот макросов вас макросов для автоматизации из вашего *.xla простого и весьма открыты. Некоторые листы функций данного набора также постановкой галочки которых доступны черезНадстройки Excel можно подразделить вашей операционной системе. Для этого необходимо в группе, состоящей сотен!) можно найтиСохраните файл надстройки код такой функции:
Plex
Несмотря на это,Разработчик (Developer) тоже беспокоить уже рутинных процессов, будь файла. Чтобы убедиться востребованного языка программирования из различных файлов макросов в книгу, напротив пункта «Доверять стандартные формулы, но на три типа:
Mac OS, и скачайте выполнить те же из нескольких листов, на большом количестве
и перезапустите ExcelНесложно сообразить, что эта мы можем ввести. Если вкладки не будет, т.к. то перевод формул
в этом снова VBA (Visual Basic могут быть скопированы после чего их доступ к объектной обеспечивающие иной форматсамой программы; ее. действия, что и то результаты будут
сайтов в интернете,. функция нужна для имя нашей процедурыРазработчик надстройки по определению в значения, вывод откройте редактор Visual for Applications). в один. В
можно будет использовать модели проектов VBA». вывода.COM-надстройки (для модели компонентныхСледуйте инструкциям по установке для загрузки надстройки выведены на первом если искать поПосле перезапуска у функции извлечения НДС из в полене видно, то входят в доверенные суммы прописью или Basic (ALT+F11).
Чтобы создать, добавить и ячейке можно создать на тех компьютерах,
Загрузка производится таким«Пакет анализа VBA», предоставляющий объектов) — за для Mac OS. «Пакет анализа». В листе, на остальных ключевым словам «imageMso». должно отобразиться описание, суммы включающей НДС.
Имя макроса (Macro name) её можно отобразить источники. суммирования ячеек поКак видно ее теперь включить свою надстройку выпадающий список. Plex где Plex не
же образом, как возможность программистам публиковать счет этих файловОткройте файл Excel с окне листах будут выведены Для начала можно которое мы ввели: Не бином Ньютона,, а затем нажать черезМожно сделать цвету. И тут всегда можно найти с макросом, следует: позволяет сортировать строки устанавливался.
и других надстроек. функции, предоставляемые предыдущей увеличиваются возможности рассматриваемого данными и щелкнитеДоступные надстройки пустые диапазоны, содержащие сходить сюда.
Финальным, хоть и не конечно, но нам кнопкуФайл — Параметры -отдельную вкладку встает проблема - в списке проектовСоздайте новую рабочую книгу: по цвету заливки
Использование данной надстройки позволяет Во время загрузки надстройкой. приложения из-за появления значок XLSTAT, чтобыустановите флажок
только форматы. Чтобы- обязательным, но приятным для примера сгодится,
Выполнить (Run) Настройка ленты (Fileна ленте Excel код макросов на и использовать все «ФАЙЛ»-«Создать»-«Пустая книга». Или
или в случайном извлекать уникальные элементы появится окно регистрации,«Мастер суммирования». Эта надстройка новых функций и открыть панель инструментовПакет анализа VBA провести анализ данныхonAction штрихом будет создание чтобы показать основные- и наш — Options - с красивыми кнопками Visual Basic нужно ее макросы в нажмите комбинацию горячих порядке. Листы книги из некоторого списка которое можно заполнить «Сумма» в Excel, команд, которые разработаны XLSTAT..
на всех листах,- это имя отдельной вкладки с принципы.
макрос заработает: Customize Ribbon) для запуска макросов где-то хранить, чтобы
Макрос «Сумма прописью»
любых других файлах. клавиш CTRL+N. можно сохранять отдельными по заданной колонке. любыми данными, и которая автоматически суммирует определенными пользователями, ониВы получите доступ коПримечание: повторите процедуру для процедуры обратного вызова кнопкой запуска нашегоЗаметьте, что синтаксис функцииЗдесь же можно
. надстройки. потом использовать вОткройте редактор макросов: «РАЗРАБОТЧИК»-«Код»-«Visual файлами. Извлекаемые элементы могут
В заключение
лучше отметить «Я те значения, которые имеют расширения exe всем функциям XLSTAT Надстройка «Пакет анализа» для каждого листа в — специального короткого макроса, которая будет отличается от процедуры: назначить сочетание клавишВ левом верхнем углуНадстройка — это отдельный работе.
Чтобы отключить вашу надстройку
fb.ru
Как создать и добавить надстройку в Excel с кодом VBA
Basic».Помимо этого, можно осуществлять быть выделены или гуру Excel, мне определены в условии. или dll; на 30 дней. Через Excel для Mac 2011 отдельности. макроса, который будет появляться в интерфейсеиспользуется конструкция для быстрого запуска редактора должно быть файл. ЕгоСамый простой вариант - снова откройте окноВставьте новый модуль выбрав сравнение диапазонов, копирование из них можно это не интересно». С 2010-й версииавтоматизации. 30 дней можно будет недоступна. Дополнительные сведения
Как сделать и установить надстройку в Excel
Windows Mac OS запускать наш основной Excel после подключения
- Function …. End Function макроса — за окнолегко переносить
- сохранять код макросов «ФАЙЛ»-«Параметры»-«Надстройки»-«Перейти» и снимите
- инструмент: «Insert»-«Module». формул без сдвига
- сформировать новый список.Надстройка Excel Plex позволяет не поддерживается.Стандартный набор получают вместе
использовать бесплатную версию,
см. в разделе
макрос нашей надстройки.
вместо
это отвечает кнопка
Projectс компьютера на прямо в рабочем соответственную галочку в
В окне модуля введите - диапазона.Помимо этого, можно менять осуществлять ввод сложных«Пересчет в евро» вызывает с программой Excel. которая включает функции Я не могуОткройте вкладкуFormulasToValuesИнформация об отображаемых вкладкахSub … End SubПараметры (Options)(если его не компьютер, делиться им файле, зайдя в появившемся диалоговом окне.
- свой код макроса.Здесь перечислены только основные размер диапазона ячеек, формул. Введя ее функцию EUROCONVERT, которая
- Дополнительные надстройки могут надстройки «Пакет анализа», найти надстройку «ПакетФайл. Назвать эту процедуру по умолчанию содержится
- после названия функции вв предыдущем окне видно, то включите с коллегами или редактор Visual Basic Для полного удаления Возьмем простейший пример возможности этой надстройки, тип ссылок в один раз, данную осуществляет пересчет введенных быть получены с или заказать одно анализа» в Excel
, нажмите кнопку можно как угодно. внутри книги и скобках указываются еёМакрос его через меню даже продавать ;) с помощью сочетания надстройки придется удалить
макроса: а их гораздо формулах, применять в форму можно сохранить сумм в евро. сайта офисных продуктов
из комплексных решений
Как удалить надстройку в Excel
для Mac 2011.Параметры Мы добавим её должна быть оформлена аргументы:View — Project ExplorerДавайте рассмотрим весь процесс клавиш Alt+F11 и ее файл *.xla
Полезные советы по надстройкам
Sub MyMakros() больше. работе различные инструменты, как шаблон и«Помощник по Интернету» - корпорации Microsoft. Перед XLSTAT.Чтобы загрузить надстройку «Пакети выберите категорию чуть позже. в виде специальногов теле функции производятсяПри назначении клавиш имейте): создания своей собственной добавив новый пустой
из папки C:DocumentsDim polzovatel AsПри заполнении квитанций во позволяющие ускорить работу использовать в дальнейшем. дает возможность программистам загрузкой в электронныеВариант 2.
анализа» в Excel 2016НадстройкиПроверить правильность всего сделанного XML-кода. Проще всего необходимые вычисления и ввиду, что здесьВ этом окне отображаются надстройки для Microsoft модуль через меню and SettingsUser_Name AppDataRoamingMicrosoftAddIns. String многих случаях нужно со сводными таблицами. В составе уже размещать данные электронных таблицы данные расширяющие Скачайте бесплатный выпуск StatPlus:mac
exceltable.com
Как создать свою надстройку для Microsoft Excel
для Mac, выполните. можно с помощью писать и редактировать затем результат присваивается учитывается регистр и все открытые книги Excel по шагам.Insert — ModuleВнимание! В данном примереDim data_segodnya As проставить сумму не Plex имеет встроенный находятся более 50 таблиц от Microsoft приложения необходимо установить. LE с сайта указанные ниже действия.Если вы используете Excel 2007, кнопки с зеленой такой код с переменной с названием раскладка клавиатуры. Поэтому, и запущенные надстройкиОткрываем Microsoft Excel с:
мы использовали формат Date только цифрами, но календарь, с помощью встроенных формул и в Глобальной сети Они могут быть AnalystSoft и используйтеОткройте меню нажмите галочкой сверху на
помощью специальных программ функции
- если вы назначите Microsoft Excel, в пустой книгой иПри таком способе возникает, рабочей книги дляpolzovatel = Application.UserName и прописью. Есть которого можно осуществить различных функций.
- при использовании синтаксиса установлены в каталог его вместе сСервискнопку Microsoft Office панели инструментов. Там
- — XML-редакторов. ОднаТакже обратите внимание, что сочетание, например, Ctrl+Й, том числе и сохраняем ее под однако, несколько неудобств: сохранения файла вdata_segodnya = Now дополнительная надстройка MS
мгновенный ввод датыВ данной надстройке имеется рассматриваемой надстройки. (папку) Library или Excel 2011.и выберите, а затем же рядом нажмите из самых удобных
- эту функцию не то, по факту, наша любым подходящим именемЕсли рабочих файлов много, формате «Надстройка 97-2003».MsgBox «Макрос запустил Excel, которая позволяет в ячейку, конвертер форма для ввода«Мастер подстановок». Данный макрос одно из егоStatPlus:mac LE включает многиеНадстройки Excel – кнопку на кнопку с
- (и бесплатных) - нужно, да и вам придется вVBAProject ( (например а макрос нужен Это позволяет использовать
- пользователь: » & осуществлять последнее действие. формул в значения, времени в заданную позволяет создать формулу, вложений, расположенных по
- функции, которые были.Параметры Excel дискетой для сохранения это программа Максима невозможно запустить как будущем следить за
MyExcelAddin.xlam)MyExcelAddin везде, как например ее в разных
Шаг 1. Создаем файл надстройки
polzovatel & vbNewLine При необходимости ее что можно осуществить ячейку. с помощью которой пути установки MS ранее доступны вВ окне. всех изменений. Новикова Ribbon XML предыдущий макрос-процедуру через тем, чтобы у
Выделите её мышью) в формате надстройки макрос преобразования формул версиях Excel. Например, & data_segodnya автоматической загрузки необходимо как во всей
Шаг 2. Подключаем созданную надстройку
Помимо этого, данный набор осуществляется поиск данных Office или в надстройке «Пакет анализа»,Доступные надстройкиВ раскрывающемся спискеЗакрываем Ribbon XML Editor Editor. диалоговое окно вас была включена и добавьте в с помощью команды в значения, то файлы, сохраненные вEnd Sub разместить скачанный файл книге, так и
макросов позволяет осуществлять в некотором списке папке пользователяApplication DataMicrosoftAddIns. такие как регрессии,установите флажок
Шаг 3. Добавляем в надстройку макросы
УправлениеОткрываем Excel, заходим вАлгоритм работы с нейМакросы именно русская раскладка неё новый модульФайл — Сохранить как и копировать код формате *.xlam неЗакройте окно редактора макросов sumprop.xls в папку в выделенном фрагменте. бэкап книги с по иному значениюПомимо этого, надстройки Excel гистограммы, дисперсионный анализПакет анализавыберите пункт редактор Visual Basic следующий:и кнопку и жать дополнительно через меню
или клавиши F12, придется может быть использована и выберите инструмент: XLStart, находящуюся вДанная надстройка снабжена менеджером добавлением даты и из этого списка. могут быть установлены
и t-тесты., а затем нажмитеНадстройки Excel и добавляем кЗакройте все окна Excel,Выполнить Shift, чтобы получитьInsert — Module указав тип файлав каждую книгу в версии 2007 «ФАЙЛ»-«Сохранить как» (CTRL+S). папке установки программы. листов, что позволяет времени создания резервной С 2010-й версии по иным путям,
Посетите веб-сайт AnalystSoft и кнопкуи нажмите кнопку нашему макросу процедуру чтобы не было. Такую макрофункцию нужно заглавную букву.. В этом модулеНадстройка Excel (Excel Add-in).
и старше. Поэтому В поле «ИмяНадстройка «Сумма прописью» в скрывать и показывать копии.
не поддерживается. определенным Администратором. следуйте инструкциям наОКПерейти обратного вызова конфликта файлов, когда использовать как стандартнуюДля удобства можно добавить мы и будем:Нужно не забыть лучше воспользоваться старым файла:» введите название Excel позволяет вводить листы, сортировать иТакже, используя в работе«Поиск решения» — осуществляетЗагрузка осуществляется после установки странице скачивания...KillFormulas мы будем редактировать функцию листа (СУММ, и кнопку для хранить VBA-код нашихОбратите внимание, что стандартносохранить файл в формате форматом файлов надстройке для своей тестовой прописью как денежные защищать их, а данную надстройку, можно
то, что задано надстройки. После совершенияПосле скачивания и установкиЕсли надстройкаЕсли вы используете Excel, чтобы она запускала XML-код надстройки. ЕСЛИ, ВПР…), т.е. нашего макроса на
макросов надстройки. Excel хранит надстройки с поддержкой макросов *.xla. программы. А из суммы при использовании также осуществлять с получить курс одной в ее названии, данной операции все StatPlus:mac LE откройтеПакет анализа для Mac, в наш основной макросЗапустите программу Ribbon XML
просто ввести в панель быстрого доступаКод можно либо набрать в папке C:UsersВаше_имяAppDataRoamingMicrosoftAddIns,(xlsm) или вЧитайте также: скачать VBA выпадающего списка «Тип функции «СуммаПрописью», так ними иные действия. из 17 валют по сценариям, под предоставляемые данным набором книгу с даннымиотсутствует в списке строке меню откройте замены формул на Editor и откройте любую ячейку, указав в левом верхнем «с нуля» (если но, в приниципе, формате двоичной книги код программы надстройки файла:» выберите значение и обычные числаС ее помощью можно с учетом ставки
Шаг 4. Добавляем в надстройку функции
которыми понимают входные макросов возможности становятся для анализа. поля вкладку значения. в ней наш в качестве аргумента углу окна. Для вы умеете программировать), можно указать любую (xlsb). сумма прописью с «Надстройка Excel 97-2003» при использовании «ЧислоПрописью». округлять числа, переставлять
рефинансирования на любую значения, подставляемые в доступными в электронныхОткройте StatPlus:mac LE. ФункцииДоступные надстройкиСредстваСохраняем внесенные изменения и, файл MyExcelAddin.xlam значение суммы с
этого выберите либо скопировать откуда-нибудь
- другую удобную вамПри открытии такого файла копейками на русском, (*.xla). Автоматически откроеться
- Существуют различные надстройки для значения в обратном прошедшую дату. Данные
- Excel. Решения подбираются таблицах. Они добавляются можно будет найти, нажмите кнопкуи в раскрывающемся
вернувшись в ExcelПри помощи кнопки НДС:Файл — Параметры - уже готовый (что папку.защита от макросов украинском и английском папка для установки Microsoft Excel. Их порядке с автоматической берутся автоматически с «что-если», анализируя ячейки в соответствующие меню в меню StatPlus:macОбзор списке выберите пункт проверяем результат:
tabs… или ввести через Панель быстрого доступа гораздо проще). Давайте,Теперь созданную нами набудет каждый раз языке. Или перевод надстроек: C:Documents and
назначение состоит в заменой формул. При Центробанков России, Украины перебора и ограничений. вместе с теми LE., чтобы найти ее.
- Надстройки для ExcelВот и всё
- в левом верхнем стандартное диалоговое окно (File — Options для пробы, введем прошлом шаге надстройку
- выдавать предупреждение, которое числа в текст SettingsUser_Name AppDataRoamingMicrosoftAddIns. И облегчении проведения различных
- использовании Plex существует или Беларуси.Как и после загрузки командами, которые вложеныВажно:
- Если появится сообщение о. — надстройка готова
- углу добавьте заготовку вставки функции (кнопка — Customize Quick
в добавленный пустойMyExcelAddin нужно подтвердить (ну,
Шаг 5. Создаем вкладку надстройки в интерфейсе
средствами Excel. нажмите на кнопку операций в данной возможность объединения ячеекНадстройка позволяет генерировать в любого другого набора в коде данной том, что надстройка
В диалоговом окне к использованию. Наполните кода для новойfx Access Toolbar) модуль код простого,надо подключить к или отключить защитуПримечание. Если вы хотите «Сохранить». программе, добавлении отсутствующих с сохранением текста выделенный диапазон ячеек макросов, на ленте надстройки Excel.
В Excel 2011 отсутствует справка «Пакет анализа» не
- Надстройки её своими процедурами вкладки:в строке формул),, а затем в
- но полезного макроса: Excel. Для этого полностью, что может защитить паролем доступ
- Перед тем как установить функций, сокращении затрат при использовании символа-разделителя. случайные числа, которые или в менюПри слишком большом количестве
- по XLStat и установлена на компьютере,установите флажок и функциями, добавьтеВ пустые кавычки нужно выбрав категорию выпадающем списке вПосле набора кода не идем в меню быть не всегда
- к своим исходным надстройку в Excel, времени на выполнениеДанная надстройка снабжена инструментом могут быть как электронных таблиц появятся загруженных макросов может
StatPlus:mac LE. Справка нажмите кнопкуПакет анализа
красивые кнопки - вписатьОпределенные пользователем (User Defined) верхней части окна забудьте нажать наФайл — Параметры - желательно). кодам макросов, тогда закройте все открытые рутинных действий. В по форматированию текста, дробными, так и новые команды или снизиться производительность работы по XLStat предоставляетсяДа
, а затем нажмите и использовать макросыid: опцию кнопку сохранения (дискетку) Надстройки (File -Более изящным решением будет выберите инструмент в рабочие книги снова данной статье рассмотрены который позволяет преобразовать целыми, повторяющимися и - табы. С помощью компьютера из-за перегрузки компанией XLSTAT. Справка, чтобы ее установить. кнопку в работе станетнашей вкладки иЕдинственный неприятный момент здесьМакросы
- в левом верхнем
- Options — Add-Ins) создание редакторе Visual Basic: запустите программу Excel. лишь некоторые надстройки. кириллицу в латиницу, неповторяющимися, в числовом этой надстройки в памяти. Поэтому те по StatPlus:mac LE
- Выйдите из приложения ExcelОК намного проще.
группы (любые уникальные — это отсутствие. После этого наш углу., жмем на кнопкусвоей собственной надстройки (Excel «Tools»-«VBAProject Properties». НаВыберите инструмент: «ФАЙЛ»-«Параметры»-«Надстройки». Внизу На самом деле
planetaexcel.ru
изменять регистр и
Skip to content
Сегодня мы продолжим изучение пользовательских функций Excel. Поскольку вы уже знаете, как их создавать (и, я надеюсь, вы также пробовали применять их), давайте копнем немного глубже и узнаем, как использовать и хранить определяемые пользователем функции в Excel.
Мы покажем вам, как легко сохранить ваши функции в файле надстройки Excel, чтобы использовать их позже буквально несколькими нажатиями мышки.
Вот о чем мы будем говорить:
- Совместное использование с другими функциями
- Применение в других функциях и макросах VBA
- Как вызвать функцию из другой книги
- Использование файла надстройки (рекомендуется)
Использование с другими функциями
После того, как вы проверили, что ваши пользовательские функции работают правильно, их можно использовать в формулах Excel или в коде VBA.
Пользовательские функции в рабочей книге Excel можно применять точно так же, как вы применяете обычные функции. Например, просто запишите в ячейке формулу
=GetMaxBetween(A1:A6;10;50)
Их также можно использовать в сочетании с обычными функциями. Например, добавим поясняющий текст к рассчитанному максимальному значению:
=СЦЕПИТЬ(«Максимальное значение между 10 и 50 – «;GetMaxBetween(A1:A6;10;50))
Результат вы видите на скриншоте ниже:
Можно найти товар, количество которого максимальное и находится в диапазоне от 40 до 50.
В формуле
=ИНДЕКС(A2:A9;ПОИСКПОЗ(GetMaxBetween(B2:B9;F1;F2);B2:B9;0))
пользовательская функция GetMaxBetween находит в диапазоне B2:B9 максимальное число между 40 и 50. Затем при помощи функций ИНДЕКС+ПОИСК мы получаем название товара, которое соответствует этому максимальному значению:
Как видите, использование настраиваемых функций ничем не отличается от обычных функций Excel.
При этом помните, что пользовательская функция может только возвращать значение, но не может выполнять никакие другие действия. Более подробно об ограничениях пользовательских функций читайте здесь.
Применение в других функциях и процедурах VBA
Пользовательские функции также можно использовать в макросах VBA.
На скриншоте ниже вы видите код макроса, который в столбце, содержащем активную ячейку, ищет максимальное значение в диапазоне от 10 до 50.
Код макроса содержит пользовательскую функцию GetMaxBetween(.Cells, 10, 50). Она находит нужное максимальное значение в активном столбце. Затем это значение будет выделено цветом.
Результат работы макроса вы видите на скриншоте ниже.
Также пользовательская функция может быть использована внутри другой пользовательской функции. Проблема конвертации числа в текст обычно решается при помощи пользовательской функции. Функция SpellNumber отлично выполняет эту задачу, добавляя также денежные единицы измерения (рубли). Вот код этого макроса:
Public Function SpellNumber(x As Double) As String
If x > 999999999999.99 Then
SpellNumber = "Число больше 999 999 999 999.99!"
ElseIf x < 0 Then
SpellNumber = "Отрицательное число!"
Else
x = FormatNumber(x, 2)
Dim b As Byte, b1 As Byte, b2 As Byte, kop As String
b = (x - Fix(x)) * 100
b2 = b 10
b1 = b Mod 10
If b2 <> 1 And b1 = 1 Then
kop = " копейка"
ElseIf b2 <> 1 And b1 > 1 And b1 < 5 Then
kop = " копейки"
Else
kop = " копеек"
End If
kop = b2 & b1 & kop
Dim y(1 To 4) As Integer, i1 As Byte
For i1 = 1 To 4
x = Fix(x) / 1000
y(i1) = (x - Fix(x)) * 1000
Next
Dim Numeric(1 To 4) As String, i2 As Byte, y1 As Byte, y2 As Byte, _
y3 As Byte, Numeric0 As String, Numeric1 As String, Numeric2 As String, Numeric3 As String, _
Numeric4 As String
For i2 = 1 To 4
y1 = y(i2) Mod 10
y2 = (y(i2) - y1) / 10 Mod 10
y3 = y(i2) 100
Numeric1 = Choose(y3 + 1, "", "сто ", "двести ", "триста ", "четыреста ", _
"пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ")
Numeric2 = Choose(y2 + 1, "", "", "двадцать ", "тридцать ", "сорок ", _
"пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят ", "девяносто ")
If y2 = 1 Then
Numeric3 = Choose(y1 + 1, "десять ", "одиннадцать ", "двенадцать ", _
"тринадцать ", "четырнадцать ", "пятнадцать ", "шестнадцать ", _
"семнадцать ", "восемнадцать ", "девятнадцать ")
ElseIf y2 <> 1 And i2 = 2 Then
Numeric3 = Choose(y1 + 1, "", "одна ", "две ", "три ", "четыре ", "пять ", _
"шесть ", "семь ", "восемь ", "девять ")
Else
Numeric3 = Choose(y1 + 1, "", "один ", "два ", "три ", "четыре ", "пять ", _
"шесть ", "семь ", "восемь ", "девять ")
End If
If y2 <> 1 And y1 = 1 Then
Numeric4 = Choose(i2, "рубль ", "тысяча ", "миллион ", "миллиард ")
ElseIf y2 <> 1 And y1 > 1 And y1 < 5 Then
Numeric4 = Choose(i2, "рубля ", "тысячи ", "миллиона ", "миллиарда ")
ElseIf y1 = 0 And y2 = 0 And y3 = 0 Then
Numeric4 = Choose(i2, "рублей ", "", "", "")
Else
Numeric4 = Choose(i2, "рублей ", "тысяч ", "миллионов ", "миллиардов ")
End If
Numeric(i2) = Numeric1 & Numeric2 & Numeric3 & Numeric4
Next
If y(1) + y(2) + y(3) + y(4) = 0 Then
Numeric0 = "ноль рублей " & kop
Else
Numeric0 = Numeric(4) & Numeric(3) & Numeric(2) & Numeric(1) & kop
End If
SpellNumber = Replace(Numeric0, Left(Numeric0, 1), UCase(Left(Numeric0, 1)), 1, 1)
End If
End Function
Применив вместе уже знакомую нам GetMaxBetween и SpellNumber, мы можем получить максимальное значение из диапазона и сразу записать его в виде текста.
Для этого создадим новую пользовательскую функцию, в которой используем уже знакомые нам функции GetMaxBetween и SpellNumber.
Function SpellGetMaxBetween(rngCells As Range, MinNum, MaxNum)
SpellGetMaxBetween = SpellNumber(GetMaxBetween(rngCells, MinNum, MaxNum))
End Function
Как видите, функция GetMaxBetween является аргументом другой пользовательской функции – SpellNumber. Сначала она определяет максимальное значение, как мы уже неоднократно делали ранее. Затем это число преобразуется в текст.
На скриншоте выше вы видите, как функция SpellGetMaxBetween находит максимальное число в диапазоне от 5000 до 7000, а затем конвертирует его в текст.
Как вызвать пользовательскую функцию из другой книги
Если вы создали пользовательскую функцию в вашей рабочей книге, то это ещё, к сожалению, не означает, что её можно без проблем везде применять.
По моему опыту, большинство пользователей рано или поздно собирают свою личную коллекцию макросов и пользовательских функций для автоматизации отдельных процессов и расчётов. И тут встает проблема: код пользовательских функций на Visual Basic нужно где-то хранить, чтобы потом использовать в работе.
Чтобы применить пользовательскую функцию, рабочая книга, в которой вы ее сохранили, должна быть открыта в вашем Excel. Если вы это не сделали, то при попытке использования вы получите ошибку #ИМЯ!. Эта ошибка говорит о том, что Excel не знает имени функции, которую вы хотите употребить в формуле.
Рассмотрим способы, при помощи которых вы можете использовать созданные настраиваемые функции.
Способ 1.
Вы можете перед именем функции указать имя книги, в которой она находится. Например, если вы сохранили пользовательскую функцию GetMaxBetween в книге с именем My_Functions.xlsm, то необходимо ввести такую формулу:
= My_Functions.xlsm!GetMaxBetween(A1:A6;10;50)
Способ 2.
Сохраняем все пользовательские функции в одной специальной рабочей книге (например, My_Functions.xlsm ) и копируем из нее нужную функцию в текущую рабочую книгу в случае необходимости. Тогда не нужно будет указывать имя файла, как это сделано выше.
При создании каждой новой пользовательской функции вам необходимо дублировать ее код в ту книгу, в которой вы будете ее использовать. При таком способе возникает несколько неудобств:
- Если рабочих файлов много, а функция нужна везде, то и копировать код придется в каждую книгу.
- Нужно не забыть сохранить рабочую книгу в формате с поддержкой макросов (xlsm или xlsb).
- При открытии такого файла защита от макросов будет каждый раз показывать предупреждение, которое нужно подтвердить. Многие пользователи пугаются, видя предупреждение на жёлтой полосе, которое просит их включить макросы. Чтобы не видеть это сообщение, вам нужно отключить защиту Excel полностью. Это может быть не всегда правильно и безопасно.
Думаю, вы согласитесь со мной, что все время открывать файл и копировать из него код пользовательских функций или писать название этого файла в формуле – это не самые удачные решения.
Способ 3.
Думаю, что самый лучший способ – хранить часто используемые пользовательские функции в файле надстройки (Excel Add-in).
Достоинства использования надстройки:
- Достаточно один раз подключить надстройку в ваш Excel. После этого можно использовать её процедуры и функции в любом файле на этом компьютере. Сохранять ваши рабочие книги в xlsm- и xlsb-формате не потребуется, так как исходный код будет храниться не в них, а в файле надстройки.
- Защита от макросов вас беспокоить уже не будет, так как надстройки всегда относятся к доверенным источникам. Она будет автоматически загружаться при каждом запуске Excel практически незаметно для вас.
- Надстройка – это отдельный файл. Его легко переносить с компьютера на компьютер, делиться им с коллегами.
О создании и использовании надстройки мы подробнее поговорим далее.
Сохранение пользовательских функций в файле надстройки
Как создать собственную надстройку? Рассмотрим пошагово.
Шаг 1. Создаем файл надстройки.
Открываем Microsoft Excel, создаем новую книгу и сохраняем ее под любым подходящим именем (например My_Functions) в формате надстройки. Для этого используем меню Файл – Сохранить как или клавишу F12
. Обязательно указываем тип файла Надстройка Excel:
Ваша надстройка будет иметь расширение .xlam.
Обратите внимание, что стандартно Excel хранит надстройки в папке C:Users[Ваше_имя]AppDataRoamingMicrosoftAddIns. Советую принять расположение по умолчанию. Вы можете указать любую другую папку. Но тогда при подключении надстройки вам нужно будет найти и указать ее новое расположение вручную. Если вы сохраните ее в папке по умолчанию, вам не придется искать надстройку на своем компьютере. Excel автоматически внесет ее в список.
Шаг 2. Подключаем файл надстройки.
Теперь созданную нами надстройку My_Functions надо подключить к Excel. Тогда она будет загружаться автоматически при старте программы. Для этого используем меню Файл — Параметры — Надстройки. Убедитесь, что внизу в поле Управление выбраны Надстройки Excel. Жмем на кнопку Перейти в нижней части окна. В появившемся окне отмечаем нашу надстройку My_Functions. Если вы не видите ее в списке, нажмите кнопку Просмотр и укажите расположение вашего файла надстройки вручную.
Если вы используете надстройку для хранения пользовательских функций, то нужно выполнять одно простое правило. Если вы передаете рабочую книгу другому человеку, то не забудьте также передать копию этой надстройки, которая содержит нужные функции. Он должен подключить ее так же, как вы это сделали сейчас.
Шаг 3. Добавляем в надстройку пользовательские функции и макросы.
Наша надстройка подключена к Excel, но в ней пока нет ничего. Чтобы добавить в нее новые пользовательские функции, откройте редактор Visual Basic при помощи сочетания клавиш Alt+F11
. После этого вы можете добавлять новые модули с кодом VBA, как описано в этом руководстве.
Выберите в окне VBAProject ваш файл надстройки (My Finctions.xlam). Используйте меню Insert – Module, чтобы добавить пользовательский модуль. В него нужно записывать пользовательские функции.
Код пользовательской функции вы можете либо набрать вручную, либо скопировать откуда-нибудь.
Вот и все. Теперь вы создали свою собственную надстройку, загрузили ее в Excel и можете использовать в ней макросы и настраиваемые функции. Чтобы добавить новый макрос, просто запишите его код в модуле надстройки в редакторе VBA и сохраните его.
Мы рассмотрели способы создания, отладки пользовательской функции и как ее можно применять в вашей рабочей книге. Надеюсь, эти рекомендации будут вам полезны. Если у вас есть вопросы, пишите в комментариях к этой статье.
Как написать и использовать собственную надстройку в Excel
Если пользователь давно и плотно работает с Excel, то рано или поздно у
него собирается приличное количество макросов для автоматизации своей
работы. Если хранить код макроса в рабочем файле, возникают следующие
трудности:
-
при открытии такого файла будет каждый раз срабатывать защита от макросов
и нужно будет всякий раз подтверждать исключение безопасности или отключить
защиту полностью, что небезопасно; - если макрос нужен везде, то и копировать код его придется в каждую книгу;
-
сохранять файл нужно в формате с поддержкой макросов (xlsm) или в формате
двоичной книги (xlsb).
Если макросов много, а используются они часто более рационально будет
создание собственной надстройки Excel — отдельного файла
особого формата (xla – Excel2003, xlam – Excel2010 и старше), содержащего
все макросы.
Плюсы такого подхода очевидны:
-
больше не будет срабатывать защита от макросов, потому
что надстройки по определению входят в доверенные источники; -
однократное подключение надстройки в Excel. Теперь её
VBA процедуры и функции можно будет использовать в любом файле на
компьютере. Сохранять ваши рабочие файлы в xlsm- и xlsb-форматы, также не
требуется потому, что исходный текст будет храниться не в них, а в
файле надстройки. - можно сделать отдельную вкладку на ленте Excel для запуска макросов надстройки.
- Надстройку легко переносить с компьютера на компьютер — это отдельный файл.
Рассмотрим процесс создания своей собственной надстройки для Excel на примере Excel 2010.
1. Создать файл надстройки
Открываем Excel с пустой книгой и сохраняем ее в формате надстройки с
помощью команды Файл — Сохранить как, например,ExcelPlus), указав тип файла Надстройка Excel (Excel Add-in):
По умолчанию Excel хранит надстройки в папке C:Users<Учетная запись пользователя
>AppDataRoamingMicrosoftAddIns, но можно указать и любую другую
папку.
2. Подключить созданную надстройку
Теперь созданную нами на прошлом шаге надстройку ExcelPlus надо
подключить к Excel. Для этого в меню Файл — Параметры — Надстройки, жмем на кнопку Перейти в нижней части окна:
Если вы скопировали файл надстройки в папку по умолчанию, то новая
надстройка ExcelPlus должна появиться в списке доступных
надстроек:
Либо в этом окне жмем Обзор и указываем
положение нашего файла надстройки.
Ставим флажок напротив названия настройки и жмем ОК.
3. Добавить макросы в надстройку
Теперь надстройка подключена к Excel, но она не может работать, так как в
ней отсутствуют макросы. Добавим макрос в надстройку. Для этого откроем
редактор VBA по Alt+F11 или кнопкой Visual Basic на
вкладке Разработчик:
В левом верхнем углу редактора должно быть окно Project
В этом окне отображаются все открытые книги и запущенные надстройки Excel,
в том числе и наша надстройка — VBAProject ( ExcelPlus.xlam) Выделите её мышью и добавьте в неё новый
модуль через меню Insert — Module.
В этом модуле будет хранится VBA-код макросов надстройки.
Добавим в добавленный пустой модуль код макроса, который производит поиск в
тексте кириллических символов:
После вставки кода нужно нажать на кнопку сохранения дискетку в левом
верхнем углу.
Такие макросы как FindCyr называют еще процедурами. Макросы в составе надстроек можно запустить также как
обычные макросы:
-
при помощи сочетания клавиш Alt+F8, а затем нажать кнопку Выполнить
(макросы надстроек здесь не видны. Несмотря на это, мы можем ввести имя нашей процедуры в поле Имя макроса); - назначить сочетание клавиш для быстрого запуска макроса — кнопка Параметры в окне Макрос
- создать кнопку для нашего макроса на панели быстрого доступа в левом верхнем углу окна.
Подробнее и с картинками о способах запуска макроса написано здесь.
Мы же позже разберем, как создать отдельную вкладку на ленте Excel для
запуска макросов надстройки, но сначала рассмотрим добавление в надстройку
пользовательских функций.
4. Добавить функции в надстройку
Кроме макросов-процедур, существуют еще и макросы-функции или
пользовательская функция. Создадим в нашей надстройке еще один
модуль меню Insert — Module и вставим туда код функции,
которая находит сумму ячеек нужного цвета:
Отличие функции от процедуры заключается в том, что результат функции
всегда присваивается переменной с названием функции.
Функцию невозможно запустить как предыдущий макрос-процедуру через
диалоговое окно Макросы и кнопку Выполнить. Ее нужно использовать как стандартную функцию
листа (СУММ, ЕСЛИ, …), т.е. просто ввести в любую ячейку, указав в
качестве аргументов ячейку с цветом-образцом и диапазон суммирования:
Или ввести через стандартное диалоговое окно вставки функции (кнопка fx в строке формул),
выбрав категорию Определенные пользователем:
У созданных пользователем функций отсутствует описание функции в нижней
части окна. Чтобы его добавить, нужно:
- Открыть редактор VBA по Alt+F11.
-
Выделить нашу надстройку в панели Project и нажмите клавишу F2, чтобы
открыть окно Object Browser -
Выбрать в верхней части окна в выпадающем списке свой проект надстройки
(в конце списка) - Щелкнуть по появившейся функции правой кнопкой мыши и выберите команду Properties.
- Ввести описание функции в окно Description:
- Сохранить файл надстройки и перезапустите Excel.
После перезапуска у функции должно отобразиться описание:
5. Создать вкладку надстройки в интерфейсе Excel
Отдельная вкладка с кнопкой запуска нашего макроса будет появляться в
интерфейсе Excel после подключения нашей надстройки.
Мы будем писать код вкладки с помощью бесплатной программы для редактирования XML
Ribbon XML Editor
- Закрыть все окна Excel.
- Запустить программу Ribbon XML Editor и открыть в ней файл надстройки Excel Plus.xlam.
-
При помощи кнопки tabs в левом верхнем углу добавить
заготовку кода для новой вкладки -
В кавычки по стрелке нужно вписать id — любые уникальные
идентификаторы вкладки и группы, а в label — названия
вкладки и группы кнопок на ней: -
При помощи кнопки button на панели слева добавляем
заготовку кода для кнопки и дописываем к ней: -
Проверить правильность сделанного с помощью кнопки с зеленой галочкой
сверху на панели инструментов. Рядом с ней нажмите на кнопку с дискетой для
сохранения изменений: - Закрыть Ribbon XML Editor
-
Открыть Excel, зайти в редактор VBA по Alt+F11 и добавить к нашему
макросу процедуру вызова FindCyrStart, для запуска
основного макросы поиска кириллицы. - Сохранить изменения в редакторе VBA и в Excel проверить результат:
— Id – идентификатор кнопки;
— label — текст на кнопке;
— imageMso — условное название изображения на кнопке(иконка). Иконку можно выбрать из
большого числа изображений, щелкнув по кнопке:
— onAction
— имя процедуры обратного вызова — специального короткого макроса, который
будет запускать основной макрос FindCyr. Назвать эту
процедуру можно, например, FindCyrStart.
Это всё — надстройка готова к использованию. Теперь использовать макросы в
работе станет намного проще. Если показалось, что настройка ленты – это
слишком сложно, всегда можно использовать кнопки для запуска макросов из
панели быстрого запуска.
Как создать свою надстройку для Microsoft Excel
Даже если вы не умеете программировать, то существует множество мест (книги, сайты, форумы), где можно найти готовый код макросов на VBA для огромного количества типовых задач в Excel. По моему опыту, большинство пользователей рано или поздно собирают свою личную коллекцию макросов для автоматизации рутинных процессов, будь то перевод формул в значения, вывод суммы прописью или суммирования ячеек по цвету. И тут встает проблема — код макросов на Visual Basic нужно где-то хранить, чтобы потом использовать в работе.
Самый простой вариант — сохранять код макросов прямо в рабочем файле, зайдя в редактор Visual Basic с помощью сочетания клавиш Alt + F11 и добавив новый пустой модуль через меню Insert — Module:
При таком способе возникает, однако, несколько неудобств:
- Если рабочих файлов много, а макрос нужен везде, как например макрос преобразования формул в значения, то и копировать код придется в каждую книгу.
- Нужно не забыть сохранить файл в формате с поддержкой макросов (xlsm) или в формате двоичной книги (xlsb).
- При открытии такого файла защита от макросов будет каждый раз выдавать предупреждение, которое нужно подтвердить (ну, или отключить защиту полностью, что может быть не всегда желательно).
Более изящным решением будет создание своей собственной надстройки (Excel Add-in) — отдельного файла особого формата (xlam), содержащего все ваши «любимые» макросы. Плюсы такого подхода:
- Достаточно будет один раз подключить надстройку в Excel — и можно будет использовать её VBA процедуры и функции в любом файле на этом компьютере. Пересохранять ваши рабочие файлы в xlsm- и xlsb-форматы, таким образом, не потребуется, т.к. исходный код будет храниться не в них, а в файле надстройки.
- Защита от макросов вас тоже беспокоить уже не будет, т.к. надстройки по определению входят в доверенные источники.
- Можно сделать отдельную вкладку на ленте Excel с красивыми кнопками для запуска макросов надстройки.
- Надстройка — это отдельный файл. Его легко переносить с компьютера на компьютер, делиться им с коллегами или даже продавать 😉
Давайте рассмотрим весь процесс создания своей собственной надстройки для Microsoft Excel по шагам.
Шаг 1. Создаем файл надстройки
Открываем Microsoft Excel с пустой книгой и сохраняем ее под любым подходящим именем (например MyExcelAddin) в формате надстройки с помощью команды Файл — Сохранить как или клавиши F12 , указав тип файла Надстройка Excel (Excel Add-in):
Обратите внимание, что стандартно Excel хранит надстройки в папке C:UsersВаше_имяAppDataRoamingMicrosoftAddIns, но, в приниципе, можно указать любую другую удобную вам папку.
Шаг 2. Подключаем созданную надстройку
Теперь созданную нами на прошлом шаге надстройку MyExcelAddin надо подключить к Excel. Для этого идем в меню Файл — Параметры — Надстройки (File — Options — Add-Ins) , жмем на кнопку Перейти (Go) в нижней части окна. В открывшемся окне жмем кнопку Обзор (Browse) и указываем положение нашего файла надстройки.
Если вы все сделали правильно, то наша MyExcelAddin должна появиться в списке доступных надстроек:
Шаг 3. Добавляем в надстройку макросы
Наша надстройка подключена к Excel и успешно работает, но в ней нет пока ни одного макроса. Давайте её наполним. Для этого нужно открыть редактор Visual Basic сочетанием клавиш Alt + F11 или кнопкой Visual Basic на вкладке Разработчик (Developer) . Если вкладки Разработчик не видно, то её можно отобразить через Файл — Параметры — Настройка ленты (File — Options — Customize Ribbon) .
В левом верхнем углу редактора должно быть окно Project (если его не видно, то включите его через меню View — Project Explorer):
В этом окне отображаются все открытые книги и запущенные надстройки Microsoft Excel, в том числе и наша VBAProject (MyExcelAddin.xlam) Выделите её мышью и добавьте в неё новый модуль через меню Insert — Module. В этом модуле мы и будем хранить VBA-код наших макросов надстройки.
Код можно либо набрать «с нуля» (если вы умеете программировать), либо скопировать откуда-нибудь уже готовый (что гораздо проще). Давайте, для пробы, введем в добавленный пустой модуль код простого, но полезного макроса:
После набора кода не забудьте нажать на кнопку сохранения (дискетку) в левом верхнем углу.
Наш макрос FormulasToValues, как легко сообразить, преобразует формулы в значения в выделенном предварительно диапазоне. Иногда такие макросы называют еще процедурами. Чтобы его запустить, нужно выделить ячейки с формулами и открыть специальное диалоговое окно Макросы с вкладки Разработчик (Developer — Macros) или сочетанием клавиш Alt + F8 . Обычно в этом окне отображаются доступные макросы из всех открытых книг, но макросы надстроек здесь не видны. Несмотря на это, мы можем ввести имя нашей процедуры в поле Имя макроса (Macro name) , а затем нажать кнопку Выполнить (Run) — и наш макрос заработает:
При назначении клавиш имейте ввиду, что здесь учитывается регистр и раскладка клавиатуры. Поэтому, если вы назначите сочетание, например, Ctrl + Й , то, по факту, вам придется в будущем следить за тем, чтобы у вас была включена именно русская раскладка и жать дополнительно Shift , чтобы получить заглавную букву.
Для удобства можно добавить и кнопку для нашего макроса на панель быстрого доступа в левом верхнем углу окна. Для этого выберите Файл — Параметры — Панель быстрого доступа (File — Options — Customize Quick Access Toolbar) , а затем в выпадающем списке в верхней части окна опцию Макросы. После этого наш макрос FormulasToValues можно поместить на панель кнопкой Добавить (Add) и выбрать для него значок кнопкой Изменить (Edit) :
Шаг 4. Добавляем в надстройку функции
Кроме макросов-процедур, существуют еще и макросы-функции или как их еще называют UDF (User Defined Function = пользовательская функция). Давайте создадим в нашей надстройке отдельный модуль (команда меню Insert — Module) и вставим туда код такой функции:
Несложно сообразить, что эта функция нужна для извлечения НДС из суммы включающей НДС. Не бином Ньютона, конечно, но нам для примера сгодится, чтобы показать основные принципы.
Заметьте, что синтаксис функции отличается от процедуры:
- используется конструкция Function . End Function вместо Sub . End Sub
- после названия функции в скобках указываются её аргументы
- в теле функции производятся необходимые вычисления и затем результат присваивается переменной с названием функции
Также обратите внимание, что эту функцию не нужно, да и невозможно запустить как предыдущий макрос-процедуру через диалоговое окно Макросы и кнопку Выполнить. Такую макрофункцию нужно использовать как стандартную функцию листа (СУММ, ЕСЛИ, ВПР. ), т.е. просто ввести в любую ячейку, указав в качестве аргумента значение суммы с НДС:
. или ввести через стандартное диалоговое окно вставки функции (кнопка fx в строке формул), выбрав категорию Определенные пользователем (User Defined) :
Единственный неприятный момент здесь — это отсутствие привычного описания функции в нижней части окна. Чтобы его добавить придется проделать следующие действия:
- Откройте редактор Visual Basic сочетанием клавиш Alt + F11
- Выделите надстройку в панели Project и нажмите клавишу F2 , чтобы открыть окно Object Browser
- Выберите в верхней части окна в выпадающем списке свой проект надстройки
- Щелкните по появившейся функции правой кнопкой мыши и выберите команду Properties.
- Введите описание функции в окно Description
- Сохраните файл надстройки и перезапустите Excel.
После перезапуска у функции должно отобразиться описание, которое мы ввели:
Шаг 5. Создаем вкладку надстройки в интерфейсе
Финальным, хоть и не обязательным, но приятным штрихом будет создание отдельной вкладки с кнопкой запуска нашего макроса, которая будет появляться в интерфейсе Excel после подключения нашей надстройки.
Информация об отображаемых вкладках по умолчанию содержится внутри книги и должна быть оформлена в виде специального XML-кода. Проще всего писать и редактировать такой код с помощью специальных программ — XML-редакторов. Одна из самых удобных (и бесплатных) — это программа Максима Новикова Ribbon XML Editor.
Алгоритм работы с ней следующий:
- Закройте все окна Excel, чтобы не было конфликта файлов, когда мы будем редактировать XML-код надстройки.
- Запустите программу Ribbon XML Editor и откройте в ней наш файл MyExcelAddin.xlam
- При помощи кнопки tabs в левом верхнем углу добавьте заготовку кода для новой вкладки:
В пустые кавычки нужно вписать id нашей вкладки и группы (любые уникальные идентификаторы), а в label — названия нашей вкладки и группы кнопок на ней:
При помощи кнопки button на панели слева добавляем заготовку кода для кнопки и дописываем к ней теги:
— label — это текст на кнопке
— imageMso — это условное название изображения на кнопке. Я использовал иконку с красной кнопкой, которая имеет название AnimationCustomAddExitDialog. Названия всех доступных кнопок (а их несколько сотен!) можно найти на большом количестве сайтов в интернете, если искать по ключевым словам «imageMso». Для начала можно сходить сюда.
—onAction — это имя процедуры обратного вызова — специального короткого макроса, который будет запускать наш основной макрос FormulasToValues. Назвать эту процедуру можно как угодно. Мы добавим её чуть позже.
Сохраняем внесенные изменения и, вернувшись в Excel проверяем результат:
Вот и всё — надстройка готова к использованию. Наполните её своими процедурами и функциями, добавьте красивые кнопки — и использовать макросы в работе станет намного проще.
Финансы в Excel
Надстройки Excel
Подробности Создано 27 Март 2011
Те, кто программирует на VBA для Excel, в определенный момент задумываются над распространением своих приложений в качестве независимых файлов. Лучшая возможность для организации распространяемых файлов – это создание специальных дополнений или надстроек Excel. За время развития программы появилось несколько типов надстроек. Мы попытались собрать и систематизировать информацию для разработчиков обо всех видах, назначениях, достоинствах и недостатках надстроек Excel.
Персональная книга макросов
Для общих программ и макросов можно использовать, так называемую, личную книгу макросов – по умолчанию это файл PERSONAL.XLS (в Excel 2007-2010 PERSONAL.XLSB). Файл с данным именем создается с при записи макроса средствами Excel. Этот файл будет автоматически загружаться каждый раз при запуске Excel. Местонахождение данного файла в каталоге Windows: ПОЛЬЗОВАТЕЛЬApplication DataMicrosoftExcelXLSTART. На самом деле Excel будет запускать автоматически все файлы из данного каталога, независимо от имен файлов.
В принципе, личные книги макросов можно считать надстройками Excel. В файле PERSONAL.XLS (или любом другом из стартового каталога) можно хранить общие функции и макросы, автоматизирующие часто повторяемые операции. Для выполнения каких-либо операций при старте Excel можно использовать событие Worbook_Open этого файла, либо процедуру Auto_Open в модуле кода.
Надстройки с расширением xla (в версии 2007-2010 xlam) представляют собой стандартный xls-файл, который может быть открыт как невидимая в списке открытых файлов рабочая книга.
Файл надстройки обычно содержит программный код, который управляет какими-либо оперциями активной рабочей книги Excel. Теоретически, кроме модулей кода, в состав xla-файла могут быть таблицы и даже листы диаграмм, но надо понимать, что особого смысла в этих данных нет, так как нет возможности отобразить эти данные на экране стандартными средствами. На рабочих листах надстройки можно хранить, например, константы для работы кода, если по каким-либо соображениям не хочется использовать константы VBA. Данные в ячейках файла надстройки можно даже изменять во время работы, но сохранять открытый и исполняемый в данный момент файл xla в общем случае недопустимо.
Для доступа к данным рабочей книги надстройки используется объект ThisWorkbook, а для работы с активной рабочей книгой – объект ActiveWorkbook.
В надстройках имеется возможность хранить пользовательские функции для работы с данными рабочих листов (user defined function — UDF). Только надо учитывать, что в этом случае рабочий файл сохраняет ссылку (связь) на файл надстройки по абсолютному пути. Эта особенность может затруднить распространение программных продуктов.
Отладку надстроек лучше производить через xls-файл (не забывая различия между ThisWorkbook и ActiveWorkbook), а впоследствии сохранять этот файл как xla. Нектороые сложности могут в этом случае возникнуть при использовании событий Workbook_AddinInstall и Workbook_AddinUninstall, так как их невозможно эмулировать в простом файле рабочей книги. К счастью, эти события требуются крайне редко; честно говоря, мы не знаем ни одного примера их полезного использования на практике.
Подключать готовую XLA-надстройку можно через соответствующий диалог (Excel 2000-2003 Сервис Надстройки, Excel 2007 Кнопка Office Параметры Excel Надстройки Перейти).
Подключаемые надстройки прописываются в реестре Windows по адресу HKEY_CURRENT_USER Software Microsoft Office НОМЕР_ВЕРСИИ.0 Excel Options в строковых параметрах с префиксом OPEN и порядковым номером надстройки (причем первая по порядку надстройка номера не имеет). Управляя этим ключом реестра, можно подключить / отключить надстройку через инсталляционные программы. Это, кстати, еще одна причина никогда не использовать событие Workbook_AddinInstall – очевидно, что оно не будет вызвано при изменении ключей реестра внешними программами.
Имя и описание надстройки можно задать в свойствах файла перед его сохранением в форматие xla/xlam (Excel 2000-2003 Файл Свойства, Excel 2007 Кнопка Office Подготовить Свойства).
Важным преимуществом надстройки XLA/XLAM вместо использования кода внутри рабочих файлов является возможность повторного использования кода VBA. Кроме того, установленные надстройки не спрашивают о наличии макросов при запуске Excel на любом уровне безопасности.
Интересная, но скорее всего бесполезная в работе информация. Надстройки XLA в Excel версии 5.0-8.0 (95-97) хранятся в скомпилированном виде. В связи с этим, там просто нет исходного текста программ в открытом или зашифрованном виде. Эта особенность приводит к невозможности декомпиляции или вскрытию кода специальными средствами. К сожалению, в последующих версиях Excel надстройки хранятся в нескомпилированном виде и легко преобразуются в доступный для изменения файл, даже будучи защищенными паролями. Microsoft рекомендует использовать для разработчиков возможности COM-DLL и средства VSTO (см. далее).
В качестве примера XLA-надстройки, можно ознакомиться с исходным кодом надстройки ExcelFin в разделе Программы.
Надстройки excel
Более 100 команд, которых нет в MS Excel.
Мгновенная обработка данных благодаря уникальным алгоритмам.
Полная сохранность данных благодаря встроенному модулю безопасности.
Гибкая индивидуальная настройка параметров.
Полная on-line справка на русском языке.
Более 60 формул, которых нет в MS Excel.
Дружелюбный интерфейс не оставляет вопросов.
Действия большинства операций можно отменить стандартным способом.
Постоянное добавление новых команд и функций.
E-mail поддержка и консультация пользователей.
Что такое надстройка ЁXCEL?
ЁXCEL это набор макросов и функций, которые расширяют стандартные возможности MS Excel и делают «невозможное» — возможным.
Сергей Хвостов разработчик сайта www.e-xcel.ru
Как это работает?
Новая вкладка меню
Надстройка ЁXCEL создаст в вашем MS Excel новую вкладку меню с командами и формулами. Если надстройку удалить или отключить — эта вкладка исчезнет.
Как использовать команды?
Выделите нужный Вам объект (лист, таблицу, диапазон ячеек, диаграмму или рисунок) и кликните по соответствующему пункту меню надстройки ЁXCEL.
Как работает отмена?
Просто, нажмите стандартную кнопку отмены последнего действия или сочетание клавиш «Ctrl+Z«.
Как использовать формулы?
Встаньте курсором в ячейку, в которую вы хотите поместить формулу. В меню надстройки ЁXCEL выберете соответствующую формулу, укажите необходимые аргументы и нажмите «OK«.
Возможности надстройки ЁXCEL?
Управление файлами
С надстройкой ЁXCEL Вы сможете управлять файлами компьютера прямо из MS Excel.
Получить список файлов папки
В меню надстройки ЁXCEL выберите команду «Получить список файлов папки«, укажите папку, тип данных для вывода и нажмите OK. В рабочей книге MS Excel выведется список файлов.
Удалить файлы
С помощью фильтра выберите ненужные файлы в списке, выделите их. В меню надстройки ЁXCEL выберите команду «Удалить файлы«, и файлы из выделенных ячеек будут удалены.
Создать ссылки на файлы
Выделите ячейки с названиями файлов, в меню надстройки ЁXCEL выберите команду «Текст ячейки в ссылку«. Все выделенные ячейки превратятся в ссылки на файлы, которые можно будет открывать в один клик.
Переименовать файлы
Добавьте к списку файлов столбец с новыми названиями. Выделите столбцы со старыми и новыми названиями файлов, в меню надстройки ЁXCEL выберите команду «Переименовать файлы«. Файлы из выделенных ячеек будут переименованы.
Управление рабочей книгой
Настраивайте внешний вид рабочей книги прямо из меню надстройки ЁXCEL, не углубляясь в меню параметров MS Excel.
Создать оглавление книги
В меню надстройки ЁXCEL выберите команду «Создать оглавление книги» и в активную рабочую книгу добавиться новый лист со ссылками на все листы этой книги.
Изменить стиль ссылок
Выберите в меню надстройки ЁXCEL команду «Изменить стиль ссылок» и стиль ссылок измениться на противоположный.
Полосы прокрутки
Управляйте отображением полос прокрутки с помощью команд надстройки ЁXCEL: «Скрыть/Отобразить вертикальную (горизонтальную) полосу прокрутки«.
Показать ярлычки листов
Выберите в меню надстройки ЁXCEL команду «Скрыть/Отобразить ярлычки листов» и ярлычки листов появятся или исчезнут.
Управление листами
С помощью надстройки ЁXCEL Вы сможете сортировать листы, устанавливать и снимать защиту сразу с нескольких листов, сохранять листы как отдельные файлы, быстро создавать листы с названиями из диапазона ячеек, импортировать листы из закрытых файлов, массово переименовывать листы. Всего надстройка ЁXCEL предоставляет 20 команд для работы с листами. Вот только некоторые из них.
Импортировать листы
Выберите в меню надстройки ЁXCEL команду «Вставить листы из другой книги» и укажите файл, из которого необходимо импортировать листы. Листы из этого файла будут вставлены в активную книгу.
Модуль управления листами
В меню надстройки ЁXCEL выберите команду «Модуль управления листами» и управляйте листами рабочей книги через удобное окно. Выделите любое количество листов и выполните одну из 13 доступных команд.
Список листов книги
Выберите в меню надстройки ЁXCEL команду «Получить список листов книги» и в активную книгу будет вставлен новый лист со списком листов этой книги.
Переименовать листы
Добавьте к списку листов столбец с новыми названиями. Выделите столбцы со старыми и новыми названиями листов, в меню надстройки ЁXCEL выберите команду «Переименовать листы из списка«. Листы из выделенных ячеек будут переименованы.
Обработка текста, чисел и дат
Выделите ячейки с текстом, числами или датами и воспользуйтесь одной из 25 команд надстройки ЁXCEL. Объединяйте ячейки без потери данных, сжимайте пробелы, меняйте регистр, преобразуйте числа и даты в текст, преобразуйте текст в даты и числа. Быстро создавайте нумерованные списки, удаляйте непечатаемые символы, гиперссылки, примечания, условное форматирование и проверку данных из выделенных ячеек. Меняйте кириллицу на латиницу и наоборот. Извлекайте уникальные слова из текста, генерируйте сложные пароли, удаляйте или добавляйте слова, или символы к тексту выделенных ячеек. Вот только некоторые возможности надстройки ЁXCEL по обработки текста, чисел и дат.
Объединить ячейки
Выделите ячейки, которые вы хотите объединить. В меню надстройки ЁXCEL выберите команду «Объединить ячейки без потери данных» и выделенные ячейки будут объединены, а все данные в них сохранятся.
Заполнить пустые ячейки
Выделите столбец таблицы с пустыми ячейками. Выберите в меню надстройки ЁXCEL команду «Заполнить пустые ячейки верхними значениями» и все пустые ячейки в этом столбце будут заполнены соответствующими значениями.
Преобразовать значения
Выделите ячейки, которые Вы хотите преобразовать. Выберите в меню надстройки ЁXCEL команду «Преобразовать» и воспользуйтесь любой из 5 команд. Вот пример работы некоторых из них.
Редактировать значения
Выделите ячейки, которые Вы хотите отредактировать. Выберите в меню надстройки ЁXCEL команду «Редактировать» и воспользуйтесь любой из 7 команд. Вот пример работы некоторых из них.
Управление формулами
Надстройка ЁXCEL предоставляет 4 удобных команды по управлению формулами.
Закрепить диапазоны
Выделите ячейки с формулами, в которых вы хотите закрепить диапазоны. В меню надстройки ЁXCEL выберите команду «Закрепить диапазоны» и в выделенных ячейках все диапазоны будут закреплены одним из трех возможным способов или закрепление будет снято.
Формулы на значения
Выберите в меню надстройки ЁXCEL команду «Заменить формулы на значения» и все формулы в выделенном диапазоне или в активном листе, или во всей книге будут заменены на значения.
Разорвать связи
Выберите в меню надстройки ЁXCEL команду «Разорвать связи» и все формулы, которые ссылаются на другие книги будут заменены на значения.
Пересчитать формулы в диапазоне
Выделите диапазон ячеек, в которых необходимо пересчитать формулы. Выберите в меню надстройки ЁXCEL команду «Пересчитать формулы в выделенном диапазоне» и формулу будут пересчитаны только в этом диапазоне, но не в листе и не в книге.
Надстройка ЁXCEL
ОС Windows (RU)
MS Excel 2007 — 2019 (RU)
Версия: 19.10
119 команд
67 формул
Открытый код VBA
On-Line консультации
Регулярные обновления
Для любого количества ПК
Как подключить надстройку ЁXCEL?
Вариант №1, Вариант №2.
Если у Вас возникнут какие-либо вопросы, просто, напишите мне и я постараюсь ответить на них как можно скорее.
Комментарии
Делается средствами самого Excel:
1. Жмём F5
2. Жмём кнопку «Выделить. «
3. Ставим галку «пустые ячейки»
4. Жмём Ок
5. Жмём F2
6. Водим значение «0» и жмём Ctrl+Enter.
P.S. Если заменить нужно только в конкретном диапазоне, то на Шаге 0 его предварительно выделяем.
Делается средствами самого Excel:
1. Жмём F5
2. Жмём кнопку «Выделить. «
3. Ставим галку «пустые ячейки»
4. Жмём Ок
5. Жмём F2
6. Водим значение «0» и жмём Ctrl+Enter.
P.S. Если заменить нужно только в конкретном диапазоне, то на Шаге 0 его предварительно выделяем.
Добрый день Сергей!
Спасибо за настройку! хотелось бы поделится с вами своим решением проблемы выше. Инструкция будет детальная и понятная для простого пользователя и помогла мне решить проблему на 3 рабочих станциях. У меня точно так же возникал запрос на сохранение файла при каждом закрытии файлов эксель.
Как установить надстройку в программе Excel
Общие сведения.
Надстройки для программы excel хранятся в файлах с расширением *.xlam и*. xla.
Расширение *. Xla, как правило, используется в версиях excel 97-2003, но может поддерживаться и более поздними версиями программы.
Расширение *.xlam подходит только для последних версий программы, начиная с 2007.
Как установить надстройку в Эксель.
- Необходимо скопировать файл с надстройкой в папку на жестком диске Вашего компьютера для постоянного хранения.
Внимание: Без файла надстройка работать не будет. Не удаляйте его.
- Далее следует запустить программу Excel.
- После запуска программы зайти в меню «Файл» =>«Параметры»
- В открывшемся окне выбрать вкладку «Надстройки» и нажать кнопку «Перейти».
- В появившемся окне при помощи кнопки «Обзор…» указать путь к файлу с надстройкой, которую Вы сохранили на жестком диске компьютера.
- После нажатия кнопки «ОК» надстройка будет добавлена в программу.
- Следует убедиться, что надстройка активирована флажком («Галочкой» ) напротив названия.
Видео инструкция по установке надстройки:
Скачать !SEMTools
Последнюю версию надстройки можно скачать, нажав на кнопку ниже:
Как установить:
- Не открывая скачанный файл, кликаем по выпадающему списку в вашем браузере.
- Открываем папку загрузок.
- Копируем или переносим файл надстройки в папку на компьютере, где он не потеряется и не будет случайно удален
4. По умолчанию Windows блокирует файлы, скачанные из интернета, и в некоторых системах после подключения надстройки вкладка !SEMTools может не отобразиться на панели, для исправления ситуации нужно разблокировать файл, открыв его свойства правой кнопкой мыши.
Дальнейшие действия производятся в Excel
Надстройка для Excel !SEMTools поддерживается и корректно работает на версиях Microsoft Excel:
Excel 2010
Excel 2013
Excel 2016
Excel 365
На всех версиях Windows от XP до Windows 10
ВАЖНО: поддержки Excel for Mac нет и стабильная работа на Mac не гарантируется. Большинство функций на Mac не работают/недоступны.
Подключение надстройки в Excel
- Открываем Excel
- Идем в Параметры в меню «Файл»
- Кликаем по кнопке «Перейти» внизу окна
4. В открывшемся окошке жмем «Обзор», находим на компьютере файл надстройки и открываем двойным кликом.
- Файл должен появиться в списке с активной галочкой, жмем «ОК»
Готово!
Вкладка !SEMTools на панели управления Excel
Видеоинструкция:
Похожие статьи
Более 100 команд, которых нет в MS Excel.
Мгновенная обработка данных благодаря уникальным алгоритмам.
Полная сохранность данных благодаря встроенному модулю безопасности.
Гибкая индивидуальная настройка параметров.
Полная on-line справка на русском языке.
Более 60 формул, которых нет в MS Excel.
Дружелюбный интерфейс не оставляет вопросов.
Действия большинства операций можно отменить стандартным способом.
Постоянное добавление новых команд и функций.
E-mail поддержка и консультация пользователей.
Скачать
Как это работает?
Все команды и формулы надстройки ЁXCEL работают так же, как и встроенные в MS Excel.
- Новая вкладка меню
- Как использовать команды?
- Как работает отмена?
- Как использовать формулы?
Новая вкладка меню
Надстройка ЁXCEL создаст в вашем MS Excel новую вкладку меню с командами и формулами. Если надстройку удалить или отключить — эта вкладка исчезнет.
Управление файлами | |
Управление формулами | |
Управление почтовыми рассылками |
Управление рабочей книгой | |
Управление таблицами | |
Маркетинг и управление запасами |
Управление листами | |
Управление диаграммами | |
Управление сводными таблицами |
Обработка текста, чисел и дат | |
Календарь для ввода дат | |
Управление графическими объектами |
Управление файлами
С надстройкой ЁXCEL Вы сможете управлять файлами компьютера прямо из MS Excel.
- Получить список файлов папки
- Удалить файлы
- Создать ссылки на файлы
- Переименовать файлы
Получить список файлов папки
В меню надстройки ЁXCEL выберите команду «Получить список файлов папки«, укажите папку, тип данных для вывода и нажмите OK. В рабочей книге MS Excel выведется список файлов.
Управление рабочей книгой
Настраивайте внешний вид рабочей книги прямо из меню надстройки ЁXCEL, не углубляясь в меню параметров MS Excel.
- Создать оглавление книги
- Изменить стиль ссылок
- Полосы прокрутки
- Показать ярлычки листов
Создать оглавление книги
В меню надстройки ЁXCEL выберите команду «Создать оглавление книги» и в активную рабочую книгу добавиться новый лист со ссылками на все листы этой книги.
Управление листами
С помощью надстройки ЁXCEL Вы сможете сортировать листы, устанавливать и снимать защиту сразу с нескольких листов, сохранять листы как отдельные файлы, быстро создавать листы с названиями из диапазона ячеек, импортировать листы из закрытых файлов, массово переименовывать листы. Всего надстройка ЁXCEL предоставляет 20 команд для работы с листами. Вот только некоторые из них.
- Импортировать листы
- Модуль управления листами
- Список листов книги
- Переименовать листы
Импортировать листы
Выберите в меню надстройки ЁXCEL команду «Вставить листы из другой книги» и укажите файл, из которого необходимо импортировать листы. Листы из этого файла будут вставлены в активную книгу.
Обработка текста, чисел и дат
Выделите ячейки с текстом, числами или датами и воспользуйтесь одной из 25 команд надстройки ЁXCEL. Объединяйте ячейки без потери данных, сжимайте пробелы, меняйте регистр, преобразуйте числа и даты в текст, преобразуйте текст в даты и числа. Быстро создавайте нумерованные списки, удаляйте непечатаемые символы, гиперссылки, примечания, условное форматирование и проверку данных из выделенных ячеек. Меняйте кириллицу на латиницу и наоборот. Извлекайте уникальные слова из текста, генерируйте сложные пароли, удаляйте или добавляйте слова, или символы к тексту выделенных ячеек… Вот только некоторые возможности надстройки ЁXCEL по обработки текста, чисел и дат.
- Объединить ячейки
- Заполнить пустые ячейки
- Преобразовать значения
- Редактировать значения
Объединить ячейки
Выделите ячейки, которые вы хотите объединить. В меню надстройки ЁXCEL выберите команду «Объединить ячейки без потери данных» и выделенные ячейки будут объединены, а все данные в них сохранятся.
Управление формулами
Надстройка ЁXCEL предоставляет 4 удобных команды по управлению формулами.
- Закрепить диапазоны
- Формулы на значения
- Разорвать связи
- Пересчитать формулы в диапазоне
Закрепить диапазоны
Выделите ячейки с формулами, в которых вы хотите закрепить диапазоны. В меню надстройки ЁXCEL выберите команду «Закрепить диапазоны» и в выделенных ячейках все диапазоны будут закреплены одним из трех возможным способов или закрепление будет снято.
Надстройка ЁXCEL
ОС Windows (RU)
MS Excel 2007 — 2019 (RU)
Версия: 22.02
135 команд
69 формул
Открытый код VBA
On-Line консультации
Регулярные обновления
Для любого количества ПК
Если у Вас возникнут какие-либо вопросы, просто, напишите мне и я постараюсь ответить на них как можно скорее.
hvostov@e-xcel.ru Хвостов Сергей