Учебники

2) Visual Basic для приложений

Everybody in this country should learn how to program a computer... because it teaches you how to think." -Steve Jobs

Я хотел бы расширить мудрые слова Стива Джобса и сказать, что все в мире должны научиться программировать компьютер. Возможно, вам совсем не обязательно работать программистом или писать программы, но это научит вас думать.

В этом уроке мы рассмотрим следующие темы.

Что такое VBA?

VBA означает Visual Basic для приложений . Прежде чем мы углубимся в детали, давайте посмотрим, что такое компьютерное программирование на языке неспециалиста. Предположим, у вас есть горничная. Если вы хотите, чтобы горничная убиралась в доме и стирала. Вы говорите ей, что делать, скажем, на английском, и она сделает всю работу за вас. Работая с компьютером, вы захотите выполнить определенные задачи. Точно так же, как вы сказали горничной делать домашние дела, вы также можете сказать компьютеру, чтобы он выполнял задачи за вас.

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

VBA на самом деле к югу набор Visual Basic 6.0 BASIC означает B eginners LL-Purpose S при ymbolic I nstruction C ода.

Почему VBA?

  • Для написания инструкций используются английские выражения.
  • Создание пользовательского интерфейса похоже на использование программы рисования. Вы просто должны перетащить, перетащить и выровнять элементы управления графического интерфейса пользователя.
  • Короткая кривая обучения. С первого дня, когда вы начинаете учиться, вы можете сразу начать писать простые программы.
  • Расширяет функциональность Excel, позволяя заставить Excel вести себя так, как вы хотите

Личные и бизнес приложения VBA в Excel

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

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

Visual Basic для приложений Основы VBA

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

  • Переменная — в старших классах мы узнали об алгебре. Найдите (x + 2y), где x = 1 и y = 3. В этом выражении x и y являются переменными. Им могут быть назначены любые номера, то есть 1 и 3 соответственно, как в этом примере. Они также могут быть изменены, чтобы сказать 4 и 2 соответственно. Короче говоря, переменные являются ячейками памяти. Поскольку вы работаете с VBA, вам потребуется также объявлять переменные, как в классах алгебры.
  • Правила создания переменных
    • Не используйте зарезервированные слова — если вы работаете студентом, вы не можете использовать титул лектора или директора. Эти названия зарезервированы для преподавателей и администрации школы. Зарезервированные слова — это те слова, которые имеют особое значение в Vba, и поэтому их нельзя использовать в качестве имен переменных.
    • Имена переменных не могут содержать пробелов — вы не можете определить переменную с именем first number. Вы можете использовать firstNumber или first_number.
    • Используйте описательные имена — очень заманчиво назвать переменную после себя, но избегайте этого. Используйте описательные имена, например количество, цену, промежуточную сумму и т. Д., Чтобы ваш код VBA был легко читаем
  • Арифметические операторы. Применяются правила сложения и вычитания в скобках деления умножения (BODMAS), поэтому не забывайте применять их при работе с выражениями, использующими несколько различных арифметических операторов. Как и в Excel, вы можете использовать
    • + для дополнения
    • — для вычитания
    • * для умножения
    • / для деления.
  • Логические операторы. Концепция логических операторов, описанная в предыдущих руководствах, также применяется при работе с VBA. К ним относятся
    • Если заявления
    • ИЛИ
    • НЕ
    • А ТАКЖЕ
    • ПРАВДА
    • ЛОЖНЫЙ

Включить опцию разработчика

  • Создать новую рабочую книгу
  • Click on the ribbon start button
  • Select options
  • Click on customize ribbon
  • Select the developer checkbox as shown in the image below
  • Click OK

Введение в макросы в Excel

You will now be able to see the DEVELOPER tab in the ribbon

VBA Hello world

Now we will demonstrate how to program in VBA. All program in VBA has to start with «Sub» and end with «End sub». Here the name is the name you want to assign to your program. While sub stands for a subroutine which we will learn in the later part of the tutorial.

Sub name()
.
.
. 
End Sub

We will create a basic VBA program that displays an input box to ask for the user’s name then display a greeting message

This tutorial assumes you have completed the tutorial on Macros in excel and have enabled the DEVELOPER tab in excel.

  • Create a new work book
  • Save it in an excel macro enabled worksheet format *.xlsm
  • Нажмите на вкладку РАЗРАБОТЧИК
  • Нажмите на раскрывающийся список INSERT под панелью управления
  • Выберите командную кнопку, как показано на рисунке ниже

Создание вашего первого Visual Basic для приложений (VBA) в Excel

Нарисуйте командную кнопку в любом месте листа

Вы получите следующее диалоговое окно

Создание вашего первого Visual Basic для приложений (VBA) в Excel

  • Переименуйте имя макроса в btnHelloWorld_Click
  • Нажмите на новую кнопку
  • Вы получите следующее окно кода

Создание вашего первого Visual Basic для приложений (VBA) в Excel

Введите следующие коды инструкций

Dim name As String
name = InputBox("Enter your name")
MsgBox "Hello " + name

ВОТ,

  • «Dim name as String» создает переменную с именем name. Переменная будет принимать текстовые, числовые и другие символы, потому что мы определили ее как строку
  • «name = InputBox (« Введите ваше имя »)» вызывает встроенную функцию InputBox, которая отображает окно с заголовком «Введите ваше имя». Введенное имя затем сохраняется в переменной имени.
  • » MsgBox» Hello «+ name» вызывает встроенную функцию MsgBox, которая отображает Hello и введенное имя.

Ваше полное окно кода теперь должно выглядеть следующим образом

Создание вашего первого Visual Basic для приложений (VBA) в Excel

  • Закройте окно кода
  • Щелкните правой кнопкой мыши на кнопке 1 и выберите редактировать текст
  • Войти Скажи привет

Создание вашего первого Visual Basic для приложений (VBA) в Excel

  • Нажмите на Скажи привет
  • Вы получите следующее поле ввода

Создание вашего первого Visual Basic для приложений (VBA) в Excel

  • Введите свое имя т.е. Иордания
  • Вы получите следующее окно сообщения

Создание вашего первого Visual Basic для приложений (VBA) в Excel

Поздравляем, вы только что создали свою первую программу VBA в Excel

Пошаговый пример создания простого калькулятора электромагнитных помех в Excel

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

Создание вашего первого Visual Basic для приложений (VBA) в Excel

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

Функция PMT работает следующим образом

=PMT(rate,nper,pv)

ВОТ,

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

Создайте графический интерфейс с использованием ячеек Excel, как показано ниже

Создание вашего первого Visual Basic для приложений (VBA) в Excel

Добавьте командную кнопку между строками 7 и 8

Дайте кнопке имя макроса btnCalculateEMI_Click

Нажмите на кнопку редактирования

Введите следующий код

Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Double
monthly_rate = Range("B6").Value / Range("B5").Value
loan_amount = Range("B3").Value
number_of_periods = Range("B4").Value * Range("B5").Value 
emi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount)
Range("B9").Value = emi

ВОТ,

  • «Dim month_rate As Single,…» Dim — это ключевое слово, которое используется для определения переменных в VBA, month_rate — имя переменной, Single — тип данных, который означает, что переменная будет принимать число.
  • «month_rate = Range (» B6 «). Value / Range (» B5 «). Value» Range — это функция, используемая для доступа к ячейкам Excel из VBA, Range («B6»). Значение ссылается на значение в B6
  • «WorksheetFunction.Pmt (…)» WorksheetFunction — это функция, используемая для доступа ко всем функциям в Excel.

На следующем рисунке показан полный исходный код

Создание вашего первого Visual Basic для приложений (VBA) в Excel

  • Нажмите на сохранить и закройте окно кода
  • Протестируйте свою программу, как показано на анимированном изображении ниже

Создание вашего первого Visual Basic для приложений (VBA) в Excel

Пример 2

Шаг 1) На вкладке «Разработчик» в главном меню щелкните значок «Visual Basic», чтобы открыть редактор VBA.

Что такое VBA?

Шаг 2) Откроется редактор VBA, из которого вы можете выбрать лист Excel, в котором вы хотите запустить код. Чтобы открыть редактор VBA, дважды щелкните по листу.

Что такое VBA?

Он откроет редактор VBA в правой части папки. Это будет выглядеть как белое пространство.

Что такое VBA?

Шаг 3) На этом шаге мы увидим нашу первую программу VBA. Для чтения и отображения нашей программы нам нужен объект. В VBA этот объект или среда в MsgBox.

  • Сначала напишите «Sub», а затем свое «имя программы» (Guru99)
  • Напишите все, что вы хотите отобразить в MsgBox (обучение guru99 — это весело)
  • Завершить программу End Sub

Что такое VBA?

Шаг 4) На следующем шаге вы должны запустить этот код, нажав зеленую кнопку запуска в верхней части меню редактора.

Что такое VBA?

Шаг 5) Когда вы запустите код, появится другое окно. Здесь вы должны выбрать лист, где вы хотите отобразить программу и нажмите кнопку «Выполнить»

Что такое VBA?

Шаг 6) Когда вы нажмете кнопку «Выполнить», программа запустится. Он отобразит сообщение в MsgBox.

Что такое VBA?

Загрузите приведенный выше код Excel

Резюме

VBA означает Visual Basic для приложений. Это подкомпонент языка программирования Visual Basic, который вы можете использовать для создания приложений в Excel. С VBA вы все еще можете воспользоваться мощными функциями Excel и использовать их в VBA.