5 различий между сабвуферами и функциями

Эффективное использование VBA — или Visual Basic для приложений для Excel — и других программ Microsoft может повысить вашу производительность на рабочем месте. Подпрограммы и функции — это два распространенных типа макросов или автоматизированных процессов в VBA. Понимание того, как работают эти процедуры и как их использовать, может помочь вам организовать и упростить ваши рабочие задачи. В этой статье мы объясняем разницу между подпрограммами и функциями и когда лучше всего использовать каждую программу.

Что такое ВБА?

Visual Basic для приложений — это язык сценариев для предметной области. Предметно-ориентированные языки — это языки программирования, специфичные для определенной программы или группы программ. VBA работает с приложениями Microsoft, в частности с Excel. Вы можете использовать VBA для создания и изменения макросов в любой программе Microsoft Office. Чтобы получить доступ к интерфейсу VBA, нажмите Alt+F11 в приложении, которое вы хотите изменить. Откроется окно кода, в котором вы можете создавать и редактировать свои макросы.

Что такое подпроцедура в VBA?

Подпрограмма — сокращение от «подпрограмма» или «подпроцедура» — это небольшая программа, которая выполняет определенную задачу, например получение информации или запуск программы. Это может включать обновление ячейки, извлечение данных из другого приложения или загрузку программы в Excel. Подпрограммы могут уменьшить избыточный код или упростить определенные действия. Вы можете вызывать подпроцедуры из любой точки программы, что делает их гибкими и простыми в использовании. Существует два типа сабвуферов:

  • Публичный: вы можете использовать любую процедуру в любом модуле для доступа к общедоступной подпрограмме, и вы можете увидеть это в окне кода.

  • Частные: вы можете получить доступ к частным подпрограммам только через процедуры в том же модуле, и они не видны в окне кода.

Параметры для записи саба в VBA

При написании подпроцедуры используйте ключевое слово «sub» в начале и в конце кода. Когда вы называете подпроцедуру, она должна:

  • Начните с буквы

  • Содержит цифры и специальные символы, но без пробелов

  • Избавьтесь от ключевых слов VBA, таких как «подпрограмма» и «функция».

После того, как вы выберете имя, перечислите параметры и задачу, которую вы хотите выполнить. Это завершает работу сабвуфера и позволяет ему выполнять свое назначение.

Что такое функция в VBA?

Функция — это еще один тип программы VBA. Однако, в отличие от подпрограммы, функция может возвращать результаты. Эта способность позволяет ему выполнять повторяющиеся задачи, такие как расчет ежемесячных процентов за автомобиль или автоматизация определенного компьютерного процесса. VBA имеет несколько встроенных функций, таких как «сумма» и «среднее», и предлагает вам возможность создавать свои собственные функции.

Параметры для записи функции в VBA

Написание функции похоже на написание подпрограммы. Начните с ключевого слова «функция» и назовите код, используя те же соглашения об именах, что и для подпроцедуры.

Функция также нуждается в наборе переменных, чтобы она могла возвращать заданное значение. Чтобы назначить набор переменных, поместите выбранные переменные в круглые скобки и добавьте необходимые параметры. Завершите написание функции, поместив ключевое слово «функция» в конец оператора.

Подпрограмма против функции в VBA

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

Однако есть некоторые различия между этими двумя процедурами. Вот основные различия между подпрограммами и функциями:

Возвращаемое значение

Самая большая разница между подпрограммами и функциями заключается в том, что функция может возвращать значение, а подпрограмма — нет. Возвращаемое значение — это переменная, которую процедура отправляет обратно пользователю. Например, если вы хотите, чтобы функция вычисляла проценты по кредиту, сумма денег, которую вы должны, будет возвращаемым значением. Существует четыре основных типа возвращаемого значения:

  • Дескриптор: возвращаемое значение дескриптора хранит дескриптор окна, например рабочего листа или таблицы данных.

  • Целое число: Целочисленное значение хранит число, например, один или 25.

  • Объект: возвращаемое значение объекта хранит объект, который представляет собой группу из нескольких подпрограмм и функций, связанных вместе.

  • Строка: Строковое значение хранит строку символов, таких как алфавиты или цифры.

Подпрограмма может имитировать эффекты возвращаемого значения с помощью инструментов ByRef или ByVal, которые извлекают информацию из переменной в другой программе или функции. Это позволяет подпрограмме возвращать данные из вторичного источника.

Вызов подпрограмм и функций

Если у вас есть более одной подпрограммы или функции, вы можете указать, когда эти процедуры активируются. Вы можете сделать это, записав ключевое слово вызова или поместив имя подпрограммы в новую строку. Для запуска функции требуется определенная переменная, в то время как вы можете вызывать подпрограмму из любой точки вашей программы. Подпрограммы хорошо видны в разделе «Макросы» окна кода VBA, а функция — нет. Поскольку подпрограммы легче вызывать, вы можете использовать их для вызова функций.

Формулы

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

Повторяемость

Иногда вы можете захотеть использовать функцию или подпрограмму несколько раз. Технически вы можете повторить подпрограмму, но для этого вам потребуется помещать значение в ячейку каждый раз, когда вы ее запускаете. Поскольку функция может возвращать значение, она не требует отдельного ввода. Это позволяет легко повторять функцию с разными значениями.

Использование

Функции особенно полезны в повторяющихся задачах или задачах, требующих возвращаемого значения. Вы можете использовать функции для выполнения расчетов, определения размеров файлов или классификации выбранных объектов. Подпрограммы вызывают и выполняют функции, поскольку вы можете вызывать их из любой точки программы. Вы также можете использовать их для более простых задач, не требующих возвращаемого значения, поскольку для их работы не требуется дополнительная подпрограмма.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *