TGViewer
Hello Excel Hello Excel @helloexcel · 3.06K subscribers
Post #469 965
​​И снова МАКРОСЫ!
Вот я, мы, ваши знакомые и коллеги говорят: воспользуйся макросом, включи макрос и т.д. А что там под капотом?
Под макросом мы подразумеваем какую-то процедуру. Вот запомните это слово. Процедуры бывают разные, например Sub или Function.

В прошлом посте мы с вами использовали Sub, чтобы изменять значение одной ячейки.

✊🏻 БАЗА

📌 Sub – дословно переводится как «подпрограмма». Используя Sub, вы можете записать какое-то действие с ячейкой, листом, книгой. Создать 20 листов, поменять цвет ячеек, задать ячейке значение «единорог».
Итогом Sub будет какое-то действие, но самое главное – Sub не вернет вам значение.

📌 Function – «функция», процедура используется для выполнение набора команд с данными и обязательно возвращает какой-то результат.

Sub похож на условное форматирование ячеек, а Function на функцию ЕСЛИ, которая вернет результат.

Еще одно отличие Function в том, дорогие друзья, что ее можно вызвать как обычную функцию. Как например СУММ, МАКС или ЕСЛИ.

Сделали Function Calculator? Ну и вызывайте ее можно через команду = Calculator(…).
Вводится процедура Function также как и Sub. Смотрите в прошлом посте.
Заканчивается также выражением End Function.

🔮 Магия аргументов

Как в Sub, так и в Function после объявления процедуры, можно указывать аргументы.
На пальцах: для функции СУММ аргументами являются ячейки, которые нужно просуммировать. Для функции СЦЕПИТЬ аргументами будут ячейки, значения которых нужно склеить. Аргументы – входные данные.

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

Аргументы пишутся в скобках после объявления имени функции. Например:

Function Calculator (x As Double) As Double

— Функцию назвали Calculator
— x – аргумент
— x As Double – мы сообщаем системе, что аргумент может быть нецелым числом (с плавающей запятой)
— As Double (в конце) – мы сообщаем, что результат функции тоже может быть в конце концов числом с плавающей запятой.

Double – тип данных. Для них я сделаю отдельный пост. Сейчас нам важно сделать первую функцию и научиться ее использовать в деле.

⚒️ Делаем первую функцию

Сделаем простецкую как 3 копейки функцию, которая изменит введенный в нее аргумент: умножит на 4, а затем поделит на 3.
Запишите в Module:

Function Calculator (x As Double) As Double
Calculator = x * 4 / 3
End Function


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

Видео ниже. До новых встреч!
Подписывайтесь на Hello Excel
  • 👍 10
More from @helloexcel
  1. Apr 20, 2026И друзья, спасибо вам 💚
  2. Apr 20, 2026Post #729
  3. Apr 20, 2026Post #728
  4. Apr 20, 2026Post #727
  5. Apr 20, 2026[AI-сумасшествие] Чао, друзья! Мы давно не виделись! Начну с главного вопроса: вам тоже на…
  6. Jun 16, 2025🚀 Ускоряемся на х1000 🚀 Сегодня понедельник после затяжных выходных, нужно порадовать те…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →