В данном разделе мы рассмотрим что такое VBA, посколько именно на нем и пишутся макросы.

Что такое VBA?

VBA - язык (расшифровывается как Visual Basic for Application ) был разработан компанией Microsoft . Данный язык не является самостоятельным, а предназначен для автоматизации процессов в пакете MS Office . VBA широко используется в Excel , а также в Access , Word и других программах пакета.

VBA - простой язык программирования, которому может научиться любой желающий. Изучив его, вы сможет предоставлять команды Excel , что делать с колонками, строками, значениями в ячейках, перемещать/добавлять/сортировать листы, выводить заранее запрограммированные сообщения, писать свои формулы и функции и т.д. Суть языка заключается в оперировании объектами (что относит его к объектно-ориентированному программированию ).

Чтобы работать с VBA кодом, нам нужен редактор, который уже установлен по умолчанию. Вы можете открыть его, нажав комбинацию клавиш " ALT + F11 ".

Объекты (Objects)

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

Главный объект это Application , что соответствует самой программе Excel . Далее следует Workbooks (книга), Worksheets (лист), Range (диапазон, или отдельная ячейка). Например, чтобы обратиться к ячейке "A1" на листе нам нужно будет прописать следующий путь с учетом иерархии:

Application.Workbooks("Архив").Worksheets("Аркуш1").Range("A1") .

Таким образом, мы научились обращаться до наименьшего объекта в Excel - ячейки.

Коллекции (Collections)

В свою очередь объекты имеют "коллекции". Коллекция - это группа объектов одинакового класса. Отдельные элеметы коллекции являются также объектами. Так, объекты Worksheets являются элементами коллекции объекта Worksheet , который содержит также и другие коллекции и объекты:

  • ChartObjects (элемент коллекции объекта ChartObject )
  • Range
  • PageSetup
  • PivotTables (элемент коллекции объекта PivotTable ).

Свойства (Properties)

Каждый объект имеет свойства . Например, объект Range имеет свойство Value или Formula .

Worksheets(“Sheet1”).Range(“A1”).Value або Worksheets(“Sheet1”).Range(“A1”).Formula

В данном примере, свойство отображает значение, которое введено в ячейку или введенную формулу.

Также, через свойство Formula можно не только получить формулу, но и записать ее:

MsgBox Range(“A1”).Formula - получим сообщение с формулой в ячейке "А1 ";

Range(“B12”).Formula = “=2+6*100” - вписываем формулу =2+6*100 в ячейку B12 .

Методи (Methods)

Теперь давайте рассмотрим, каким образом мы можем управлять содержимым диапазона или ячейки. Для этого в VBA существуют, так-называемые методы (команды "что сделать"). При написании кода методы отделяются от объекта точкой, например:

Range("A1").Select или Cells(1, 1).Select

Данный метод указывает выбрать (Select ) ячейку "A1" .
Далее, давайте, удалим значение в данной ячейке. Для этого напишем следующий код:

Selection.ClearContents

Здесь программа "берет" то, что мы выделили (Selection ) и удаляет его содержимое (ClearContents ).

Действующие специалисты Санкт-Петербурга

Кравцов Владимир

Владимир о себе:
«Хотите перейти на «ты» с Excel? Добро пожаловать! Ключевая цель моих занятий - преподать материал с возможностью применения на практике полученных знаний, показать, что работа с Excel может быть интересной, а процесс обучения - доступным и понятным каждому. Профессионально расти и совершенствоваться в лёгкой позитивной атмосфере - это здорово»

Отзыв слушателя:
«Хочу поблагодарить Кравцова Владимира. Грамотное построение занятий для усваивания информации. Оперативность в подаче информации, доступная подача, заинтересованность в овладении навыков у учащихся и в качественных результатах работы в Microsoft Excel»
Анна, группа PE219-1375

Орлов Святослав

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

Отзыв слушателя:
«Понравилась структура занятия - это не просто лекция, это разбор материала и тут же его отработка на примерах. Благодарю Святослава! Буду Вас рекомендовать!»
Евгения, группа PE189-1079

Пимкина Елена

Елена о себе:
«Вы любите Excel? Любите ли Вы Excel так, как люблю его я? (с). Этот занимательный и неисчерпаемый кроссворд из миллионов клеточек, эту головоломку, логическую игру, чем дольше играешь в которую, тем больше нового в ней узнаёшь. Приходите к нам на курсы, вы полюбите Excel тоже! Или, по крайней мере, перестанете его бояться) Я веду тренинги по Excel уже не один десяток лет, консультирую по реальным практическим задачам и с удовольствием делюсь знаниями и опытом со своими слушателями»

Отзыв слушателя:
«Огромное спасибо Елене Михайловне за ее профессионализм и внимание к обучающимся! В результате обучения кроме того, что интересовало, узнала еще очень много нового и полезного. Удовлетворена результатом на 200%. Все разбиралось на конкретных примерах и сразу отрабатывалось самостоятельно. Обучение прошло на одном дыхании»
Анна, группа PE189-1205

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

В чем секрет нашего обучения?

Таких секретов 3.

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

Записывайтесь на курсы. Мы будем рады помочь вам грамотно использовать собственные ресурсы и современные возможности.

Далеко не все пользователи MS Excel даже в Москве осведомлены, что с помощью этой программы можно не только создавать таблицы, делать расчёты, формулы, графики, диаграммы и т.д., но и программировать. Встроенный язык Visual Basic for Applications (VBA) позволяет создавать макросы на собственный лад, разрабатывать их по тем параметрам, которые необходимы пользователю. Для чего это нужно? Ведь в Excel достаточно много функций, которые удовлетворяют основные потребности пользователей. Но есть ещё и та категория специалистов, которым недостаточно стандартного набора кнопок и параметров. Для успешной полноценной работы порой нужно существенно расширить функциональность Excel, что можно сделать с помощью программирования VBA.

Курсы от "Урок ПК" - лучший вариант обучения программированию VBA в Excel

Наш учебный центр предлагает курсы программирования VBA в Excel. Исходя из пожеланий заказчика, мы составим программу обучения, в которой обозначена глубина изучаемого курса. Это может быть поверхностное обучение с освоением основ программирования Visual Basic, в результате которого Вы научитесь составлять простейшие макросы с помощью макрорекордера или стандартных команд. Более углубленное изучение потребует, конечно же, большего времени и усилий для освоения курса. Однако, результат оправдывает себя: профессиональное владения языком программирования VBA в Excel позволит не только писать макросы для личного пользования, но и заниматься этим профессионально, устраиваясь на работу с соответствующими требованиями. Также знания и навыки работы с данным языком программирования не помешают любому московскому бухгалтеру или экономисту, которые вынуждены регулярно производить одни и те же операции, теряя на монотонную работу своё время. Умея создавать уникальные макросы со специфическими параметрами отбора данных, можно смело автоматизировать любую повторяющуюся работу. Это не только упростит деятельность специалиста, но и повысит его профессиональную ценность в глазах работодателей.

Наши курсы VBA - Ваше умение автоматизировать работу в Excel

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

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

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

  • Коллекция Cells

Цель курса: ...

Подробнее о программе

Модуль 1 "Введение в объектную модель. Макрорекордер"

  • Использование макрорекордера — автоматической записи макросов
  • Редакор VBE - на что обратить внимание
  • Изучение и улучшение сгенерированного кода VBA
  • Иерархия объектов, коллекции, свойства, методы и события

Модуль 2 "Синтаксис языка VBA"

  • Работа с переменными и костантами,
  • Работа с условным оператором If...Then...Else
  • Работа с операторами цикла For Each...Next, While...End While, Do...Loop
  • Основные функции для взаимодействия с пользователем
  • Создание и вызов пользовательских функций

Модуль 3 "Работа с диапазонами данных. Обработка ошибок"

  • Свойства и методы объекта Range
  • Коллекция Cells
  • Создание процедуры обработки ошибок Run-time
  • Приёмы отладки и пошагового тестирования кода

Практический тренинг в мини-группе до 5-ти участников, никаких лекций и записей, много практики "с полей".

Цель курса:

  • свободно читать и исправлять ошибки в коде VBA,
  • разбираться в редакторе VBA, проводить отладку кода и редактирование,
  • применять переменные, циклы, диалоги для ввода значений и вывода информации, пользовательские функции,
  • поэтапно и осознанно создать свой VBA-проект

Ваши компетенции после курса:

  • Чтение и понимание кода VBA, редактирование
  • Использование макрорекордера и отладчика
  • Применение массивов, циклов, подциклов
  • Разработка моделей принятия решений на VBA
  • Пользовательские функции и формы
  • Тестирование и обработка ошибок VBA
  • Создание своего проекта VBA от А до Я

Продолжительность курса: 16 академических часов практики кода VBA в Excel (4 дня по 4 ак. часа - с 19 до 22 будни)

Каждому участнику тренинга:

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


Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png