714.18K
Category: programmingprogramming

Visual basic for applications

1.

Visual basic for applications.
История развития языка.

2.

Понятие
Visual Basic – объектно-ориентированный язык программирования (ООП), разработанный корпорацией
Microsoft.
ООП – модель разработки программных систем, в которых приложения состоят из объектов.
Объекты — это сущности, у которых есть свойства и поведение. Обычно объекты являются
экземплярами какого-нибудь класса. Например, в игре может быть класс Character (персонаж), а его
экземплярами будут hero или npc.
Свойства — это данные, которые связаны с конкретным объектом:
Пример свойств?
Поведение объекта определяется с помощью методов — специальных блоков кода, которые можно
вызывать из разных частей программы. Например, у того же объекта Character могут быть следующие
методы:
идти;
атаковать;
говорить;
подобрать;
выбросить;
использовать.
Технологии VBA, основаны на фундаментальных понятиях:
ОБЪЕКТ, СВОЙСТВА, СОБЫТИЯ и МЕТОДЫ (Object, Property, Event and
Methods),

3.

Такую модель используют многие популярные
языки:
• C#;
• Java;
• Python;
• JavaScript;
• PHP;
• Kotlin;
• Swift;
• Objective-C;
• C++.

4.

Плюсы и минусы ООП
Плюсы
Легко читается.
Не нужно выискивать в коде
функции и выяснять, за что
они отвечают.
Минусы
Потребляет больше памяти.
Объекты потребляют больше
оперативной памяти, чем
примитивные типы данных.
Снижает
Быстро пишется.
производительность.
Можно быстро создать
Многие вещи технически
сущности, с которыми должна реализованы иначе, поэтому
работать программа.
они используют больше
ресурсов.
Проще реализовать большой
функционал.
Так как на написание кода
уходит меньше времени,
можно гораздо быстрее
создать приложение
с множеством возможностей.
Меньше повторений.
Не нужно писать однотипные
функции для разных
сущностей
Сложно начать.
Парадигма ООП сложнее
функционального
программирования, поэтому
на старт уходит больше
времени.

5.

Visual Basic for application - немного упрощённая реализация языка программирования Visual
Basic, встроенная в линейку продуктов Microsoft Office (включая версии для Mac OS), а также
во многие другие программные пакеты, такие
как AutoCAD, SolidWorks, CorelDRAW, WordPerfect и ESRI ArcGIS.
Visual Basic сочетает в себе процедуры и элементы объектно-ориентированных и компонентноориентированных языков программирования. Даже несмотря на то, что появился VB более 50
лет назад, он до сих пор с успехом используется для решения определенных задач.
К примеру, с его помощью благодаря автоматической реализации некоторых механизмов можно
быстро разрабатывать приложения баз данных для операционных систем от Microsoft Windows.
Visual Basic отличается от других версий языка Basic тем, что это визуальное программирование. В
более старых версиях этого языка такого не было. Мы составляли программу, не зная, что у нас в итоге
получится, и как всё это будет выглядеть. В Visual Basic пользуясь элементами визуального
проектирования мы получаем образ нашего проекта какой нам нужен.

6.

Из истории возникновения
Язык Basic был разработан профессорами Дартмутского колледжа Дж.Кемени и Т.Курцом в 1965 году
как средство обучения и работы непрофессиональных программистов. (Дартмутский колледж в штате
Нью-Гампшир, США, был создан в середине 18 века, это одно из старейший высших заведений
Америки). Его назначение определено в самом названии, которое является аббревиатурой слов Beginner's
All-purpose Symbolic Instruction Code (многоцелевой язык символических инструкций для начинающих)
и при этом в дословном переводе означает "базовый".
Примечание. Раньше языки программирования писались обязательно строчными буквами — BASIC,
FORTRAN. В 1990 году Международная организация стандартов приняла решения, что они пишутся как
обычные имена собственные — строчной является только первая буква.
Basic в основном применялся на мини - и микроЭВМ, которые в 70-е годы имели оперативную память,
объем которой кажется сегодня просто нереальным (4-32 тысяч байт). Резкое развитие систем на основе
Basic началось с появлением в начале 80-х годов персональных компьютеров, производительность и
популярность которых растет вот уже двадцать лет невиданными темпами.
В конце 80-х годов насчитывалось около десятка систем Basic различных фирм- разработчиков. Однако
главная борьба шла между QuickBasic (компания Microsoft) и TurboBasic (Borland). Вообще-то,
конкуренция между этими двумя разработчиками средств программирования шла по целому спектру
языков Basic, Pascal и C. И результатом ее в 1989 году стало неявное мировое соглашение, когда
Microsoft отказалась от дальнейшей поддержки Pascal, Borland — Basic.

7.

Язык BASIC создавался для выполнения учебных задач, при которых обучающиеся могли бы
использовать простые алгоритмы для освоения навыков программирования. Данный язык вывел
образование на новый уровень, а программисты начали соревноваться между собой, создавая все новые
и новые диалекты.
В число людей, начавших свою профессиональную карьеру с использования BASIC, входил Билл Гейтс,
который в возрасте 13 лет написал на нем свою первую программу. В 20 лет он вместе с Полом Алленом
получал свои дивиденды от реализации версии Altair BASIC.
В 80-х годах популярность BASIC стала постепенно снижаться. Разрабатываемые в то время языки уже
не имели столь сложного синтаксиса, а их спектр возможностей становился все шире. Лишь Microsoft
продолжал выпускать разновидности BASIC, сначала создав QBasic, а затем и Visual Basic.
• На первых порах версии Microsoft Visual Basic не были столь популярны. Дело в том, что они
практически не отличались от QBasic. Исключениями являлись разве что графический интерфейс и
подсветка синтаксиса. Но Microsoft внесли существенные коррективы в версию 3.0.
• Комплектация Professional позволяла разработчикам взаимодействовать с базой данных Access, а
благодаря графическим возможностям с языком смогли работать даже те люди, которые не имели
навыков программирования. Плюс ко всему, увеличилась скорость работы, а установка ПО стала
значительно проще.
В 1995 году появилась Windows 95, что позволило Visual Basic 4.0. выйти в лидеры. Был создан
полноценный компилятор, появилась возможность разрабатывать 16 и 32-ядерные приложения, и
повысилось быстродействие.

8.

Основные разновидности Visual Basic
Классический Visual Basic (Visual Basic Classic)
Данный язык в значительной степени привязан к своей среде разработки и к OS Windows, из-за чего он
может использоваться лишь в качестве инструмента создания приложений для этой операционной
системы. Привязка к среде означает наличие множества средств, помогающих и упрощающих процесс
программирования.
В список таких средств можно отнести: просмотр переменных и структур данных на лету, встроенный
отладчик, окно отладки, всплывающая подсказка при наборе текста программы (IntelliSense). Вследствие
этого применение Visual Basic вне среды разработки, скажем, в стандартном текстовом редакторе, не
только неоправданно, но и невозможно.

9.

Основные разновидности Visual Basic
Visual Basic for Applications (VBA)
Эта разновидность Visual Basic почти не отличается от обычного варианта и разрабатывалась в целях
написания макросов и прочих прикладных программ для конкретных приложений. Широкое
распространение данный язык получил за счет применения в пакете Microsoft Office. Стоит отметить, что
из-за большой популярности Visual Basic for Applications и отсутствия должного контроля безопасности
появилось множество макровирусов.

10.

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

11.

Основные разновидности Visual Basic
Visual Basic Scripting Edition (VBScript)
Можно сказать, что это немного урезанная версия стандартного Visual Basic. Данный скриптовый язык,
как правило, применяется в целях автоматизации администрирования систем на базе Windows, при
создании страниц ASP и сценариев для Internet Explorer.

12.

Основные разновидности Visual Basic
Visual Basic .NET
После выпуска Visual Basic 6.0. был смещен вектор развития технологии. При использовании Visual
Basic .NET уже нельзя работать с помощью старых методов, поэтому его можно смело назвать
отдельным языком. Это относится и ко всем остальным языкам для платформы .NET.
Visual Basic не столь распространен как C++, C# и Java, но вместе с тем он имеет довольно
большой потенциал и широкий спектр возможностей. При использовании VB.NET разработчики
могут создавать различные типы приложений, включая простые консольные утилиты,
графические программы, игровые приложения и сложные нагруженные веб-сервисы
При этом осваивать язык лучше всего с VBA. Дело в том, что он более прост, подразумевает
разработку всем известных продуктов и ограничен в области применения, что смещает акцент в
обучении именно на язык. Работа с Visual Basic .NET труднее, но интереснее. Для
программирования будет необходимо больше времени и справочных ресурсов, однако у данного
языка гораздо больше возможностей.

13.

Особенности
Этот язык очень сильно привязан к своей среде разработки и к операционной системе Windows, являясь
исключительно инструментом написания Windows-приложений.
Привязка к среде заключается в том, что существует большое количество средств, предназначенных для помощи и
удобства программирования: встроенный отладчик, просмотр переменных и структур данных на лету, окно отладки,
всплывающая подсказка при наборе текста программы (IntelliSense). Все эти преимущества делают бесполезным и
даже невозможным использование Visual Basic вне среды разработки, например в обычном текстовом редакторе.
Microsoft Visual Basic 5.0 - это мощная система программирования, позволяющая быстро и эффективно создавать
приложения для Microsoft Windows.
Позволяет резервировать переменные, с указанием размера и без, работать с различными типами данных,
использовать константы, работать с математическими операторами и функциями, использовать дополнительные
операторы. Предусмотрено использование операторов циклов For..Next, Do, объектов типа “ таймер” (невидимый
секундомер в программе). Точность установления времени в программе составляет 1 миллисекунду, или 1/1000 сек.
Microsoft Visual Basic 6.0 представляет собой интегрированную среду разработки — IDE (Integrated Development
Environment). Это означает, что в Visual Basic 6 интегрирован набор инструментов, облегчающих и значительно
ускоряющих процесс разработки готового приложения. Такая реализация языка Visual Basic 6 с полным правом
позволяет отнести его к средствам быстрой разработки приложений — RAD (Rapid Application Development) и ставит
практически в один ряд с такими средствами разработки, как Visual C++, Delphi и другими.
Простота и мощность языка Visual Basic 6 позволили сделать его встроенным языком для приложений Microsoft
Office. Многие независимые разработчики, как например известная своими программами в области бухгалтерского
учета фирма "1С", приобретают лицензии на использование языка.

14.

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

15.

Возможности VB
Создание форм осуществляется способом drag and drop, что в переводе означает «перетащи и брось».
Элементы управления располагаются на форме (к примеру, поля ввода, кнопки и др.). У этих элементов
управления имеются собственные атрибуты и обработчики событий. Множество атрибутов
предполагают возможность изменения в процессе выполнения программы, поэтому можно
разрабатывать программы, которые будут динамически реагировать на действия пользователя.
VB может создать исполняемые программы (EXE файлы), элементы управления ActiveX, библиотеки
DLL. Но все же предназначением данного языка является создание программ под OS Windows.
• Есть возможность применения диалоговых окон с ограниченными функциональными
возможностями для обеспечения подсказок. Управленческие элементы обеспечивают
основополагающие возможности функционала программы, при этом специалист может
осуществить расширение логики приложения с помощью обработчиков событий.
• Скажем, выпадающий список в автоматическом режиме показывает список и дает
возможность выбора элемента пользователем. Обработчик событий вызывается в целях
выполнения дополнительного кода в зависимости от подобранного элемента.

16.

Компилятор VB идет совместно с другими языками Visual Studio, такими как C, C++. Вместе с тем изза ограничений в интегрированной среде разработки у программиста нет возможности разрабатывать
определенные типы приложений.
Язык применяет справочные данные для того чтобы собрать мусор. У него есть обширная
библиотека сервисных объектов и объектно-ориентированная разработка. При этом VB не привязан
к регистру, что и отличает его от множества других языков. Сравнение строк с одной стороны
зависит от регистра, но с другой – может выполняться и без его учета.

17.

Особенности VB
Более того, VB имеет еще несколько особенностей:
Объединены логические и битовые операторы. Это отличает его от всех C подобных языков, например,
Java и Perl.
Так называемая булевская постоянная «истина» имеет числовое значение −1, а «ложь» − 0. Это
обусловлено тем, что тип Boolean хранится как 16-разрядное целое число со знаком. Между ними
имеется взаимосвязь, осуществляемая посредством логической операции Not. Иными словами, Истина =
Не Ложь.
Целые числа в автоматическом режиме конвертируются в вещественные после применения деления (/).
Оператор (\) осуществляет деление с усечением дробной части.
Массивы объявляются с определением верхней и нижней границ, точно также как и в Pascal и Fortran.
Используя оператор Option Basе, можно определить нижнюю границу по умолчанию, однако такое
действие может привести к путанице между программами. Нижняя граница массивов не ограничивается
0 или 1. Есть возможность установки более низких границ, тогда как в VB.NET и VBScript нижняя
граница зафиксирована.
VB объединен с OS Windows и COM.
Для переменных, объявленных без указания типа, применяется по умолчанию тип variant. Однако после
применения оператора Deftype есть возможность выставить и другой тип по умолчанию, например,
DefInt, DefBool, DefVar, DefObj, DefStr и т.д. При этом тип по умолчанию можно отменить для
переменной после применения специализированного символа-суффикса в имени переменной.

18.

Плюсы и минусы Visual Basic
Ключевым преимуществом этого языка является крайне простой синтаксис. Иными словами, Visual Basic
подходит для начинающих программистов. Вместе с тем это не является преградой для применения
современных способов создания программных приложений (визуального проектирования и использования
объектно-ориентированного подхода).
Имеются и некоторые другие преимущества:
• Можно осуществлять высокоскоростную разработку приложений с графическим интерфейсом для MS
Windows.
• Есть защита от ошибок, которые связаны с использованием указателей и доступом к памяти, за счет чего VB
приложения являются более стабильными. Однако данный нюанс подвергается критике.
• Можно применять большинство WinAPI функций в целях увеличения функционала приложений. В книге
«Visual Basic Programmer’s Guide to the Win32 API» Дэн Эпплман подробно рассматривает эту тему.
• Программист может выбрать компиляцию в машинный код, но и в P-код. Находясь в режиме отладки,
программа постоянно компилируется в P-код, причем это не зависит от выбора. Это дает возможность делать
паузу в исполнении программы для внесения существенных корректировок в исходный код, после чего
продолжать исполнение. Таким образом, нет необходимости в полной перекомпиляции и перезапуске
программы.

19.

Плюсы и минусы Visual Basic
Поддерживаются операционные системы Windows и Mac OS X и никакие другие.
Низкая скорость работы. Это объясняется тем, что почти весь список имеющихся функций языка
реализован посредством библиотеки времени исполнения (runtime library). Данная библиотека
осуществляет большое количество «излишних» действий в целях проверки и/или преобразования типов.
Нет механизма наследования реализации объектов. При помощи имеющегося в VB наследования можно
наследовать лишь интерфейсы (отсутствует возможность наследования их реализации).
Необходимо иметь установленную msvbvmXX.dll для использования программы.
При этом все вышеназванные недостатки появляются из-за наличия его ключевого преимущества –
легкости разработки графического интерфейса. По этой причине множество разработчиков применяют
VB в целях создания интерфейса пользователя, тогда как функциональность программы реализуется в
виде динамически подключаемых библиотек (DLL), которые пишутся на другом языке (в большинстве
случаев это C++).

20.

Visual basic for applications
Это средство программирования, практически ничем не отличающееся от классического Visual Basic,
которое предназначено для написания макросов(?) и других прикладных программ для конкретных
приложений. Наибольшую популярность получил благодаря своему использованию в пакете Microsoft
Office. Широкое распространение Visual Basic for Applications в сочетании с изначально недостаточным
вниманием к вопросам безопасности привело к широкому распространению макровирусов.
Особенности:
Оператор \ — деление нацело, любая дробная часть отсекается.
Перед выполнением операции a\b a и b округляются до целого.
Visual Basic for Applications (VBA, Visual Basic для приложений) — немного упрощённая
реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office
(включая версии для Mac OS), а также во многие другие программные пакеты, такие как AutoCAD,
SolidWorks, CorelDRAW, WordPerfect и ESRI ArcGIS. VBA покрывает и расширяет функциональность
ранее использовавшихся специализированных макро-языков, таких как WordBasic.
VBA является интерпретируемым языком. Как и следует из его названия, VBA близок к Visual Basic.
VBA позволяет использовать все доступные в операционной системе COM (Component Object Model)
объекты и компоненты ActiveX. По сути, возможно создание приложения на основе Microsoft Word VBA,
использующего только средства Corel Draw.
В будущем Microsoft планирует заменить VBA на Visual Studio Tools for Applications (VSTA) —
инструментарий расширения функциональности приложений, основанный на Microsoft .NET.

21.

Visual basic for applications
Фактически, это тот же самый Classic, только немного упрощенный и адаптированный под разработку
макросов и прикладного ПО для конкретных приложений. Язык программирования VBA встроен в
структуру офисного пакета Microsoft Office (Word, Excel и т.д.), а также программных продуктов от
других разработчиков — например, AutoCAD, CorelDraw, SolidWorks. Основанный на стандарте
Microsoft COM (Component Object Model), он может задействовать все имеющиеся в ОС Windows COMкомпоненты и ActiveX. Иными словами, можно исключительно с помощью средств, например,
CorelDraw и языка VBA создавать приложения для Microsoft Office.

22.

Соотношение Visual Basic и VBA с
приложениями фирмы Microsoft
VBA объединяет приложения Microsoft в рамках проектирования диалоговых прикладных приложений

23.

Алгоритмы Visual Basic
• Понятие алгоритма?
• Основные свойства алгоритма?
• Типы алгоритмов?

24.

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

25.

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

26.

Ветвление
Ветвящимся называется такой вычислительный процесс, в котором
выбор направления обработки информации зависит от исходных
или промежуточных данных (от результатов проверки выполнения
какого-либо логического условия).
Алгоритм ветвления в Visual Basic и в VBA представляет оператор
условного перехода.

27.

Если условие То команды1 Иначе команды2 Конец Если
If условие Then команды, которые исполняются при выполнении условия (истина) Else команды, которые исполняются, если условие
не выполнятся (ложь) End If.
Оператор условного перехода можно писать в многострочном варианте:
If Условие Then
Команды1
Else
Команды2
End If
Оператор условного перехода можно писать в однострочном варианте. Если оператор не помещается в одной строке, то она может
быть разбита на несколько строчек, но при переносе на новую строку, нужно поставить знак _ .
If Условие _
Then Команды1_
Else Команды2
End If
или
If Условие Then Команды1_
Else Команды2
End If

28.

Условие может быть и сложным - простые условия, соединенные
между собой логическими операциями: And - и, Or - или, Not - не.
Во многих программах можно встретить и вложенные условия, но
если в программе необходимо выбирать из множества условий
только одну, например, выбор из списка, то рациональнее это
организовать при помощи алгоритмической структуры "выбор"
(Select Case).
Алгоритмическая структура "выбор" (Select Case) - при
выполнении различных условий, выполняются различные серии
команд.
Алгоритм "выбор" в Visual Basic и в VBA представляет собой
следующий вид:

29.

Select Case Выражение (переменная, арифметическое выражение,
значение какого-то свойства ОБЪЕКТА и т.д.) End Select
Case Условие1
Команды1
Case Условие2
Команды2
Case Условие3
Команды3
(и так далее)
End Select

30.

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

31.

Цикл
Алгоритмическая структура цикл:
Цикл со счетчиком - заранее известно количество повторений.
Счетчик - значение какой-либо переменной - меняется с начального значения
до конечного значения с некоторым шагом Step.
Тело цикла (команды) выполняется до тех пор, пока Счетчик не станет равным
Конечному Значению.
Если Step отсутствует, значит шаг = 1
Синтаксис цикла со счетчиком:
For Счетчик = НачЗнач (число или выражение) То КонЗнач (число или
выражение) Step шаг(число)
ТЕЛО ЦИКЛА
Next (можно записать имя Счетчика)

32.

Цикл
Цикл с предусловием - заранее неизвестно количество повторений - тогда выход из цикла по условию.
While Условие - цикл выполняется, пока Условие верно (истина).
Do While Условие
ТЕЛО ЦИКЛА
[как изменить параметр цикла, например i = i + 2]
Loop (окончание тела цикла, показывает место, предназначен для повторения блока операторов)
Until Условие - цикл выполняется, пока Условие неверно (ложь).
Do Until Условие
ТЕЛО ЦИКЛА
[как изменить параметр цикла, например
i = i + 3]
Loop

33.

Цикл
Цикл с постусловием - заранее неизвестно количество повторений - тогда выход из цикла по
условию.
While Условие - цикл выполняется, пока Условие верно (истина).
Do
[как изменить параметр цикла, например i = i + 2]
ТЕЛО ЦИКЛА
Loop While Условие
Until Условие - цикл выполняется, пока Условие неверно (ложь).
Do
ТЕЛО ЦИКЛА
[как изменить параметр цикла, например
i = i + 1]
Loop Until Условие

34.

Основные понятия языка VBA
В VBA Excel объектами являются рабочая книга, рабочий лист и
его составляющие.
Примеры объектов:
Sheet – лист,
Cell – ячейка,
Range – диапазон ячеек,
Application – приложение,
UserForm – пользовательская форма.

35.

Методы
Над объектами можно совершать различные действия
Например: Clear (очистить), приложение закрыть (Quit), показать
пользовательскую форму (Show), скрыть (Hide).
Название метода отделяется от названия объекта точкой:
объект.метод.
Пример: Range(“B2:E2”).Select - выбрать диапазон ячеек B2:E2
UserForm2.Hide – cкрыть форму №2
Напишите команды для «показать форму 5», «очистить диапазон
ячеек C1:C5», “выйти из приложения”

36.

Методы и свойства некоторых объектов
VBA
Объект: Application (приложение).
Метод: Quit (закрыть).
Свойство: Caption (имя главного окна).
Примеры. Application.Quit - закрыть приложение; Application.Caption =
"Протокол" - установить в качестве заголовка окна приложения “Протокол”.
Объект: Sheet (лист), ActiveSheet (активный/выбранный лист).
Семейство: Sheets (листы).
Методы: Select (выбрать); ShowDataForm (показать встроенную форму).
Примеры: Sheets("Меню").Select - выбрать лист “Меню”;
ActiveSheet.ShowDataForm - на активном в настоящий момент листе показать
встроенную форму.

37.

Методы и свойства некоторых объектов
VBA
Объект: Range (диапазон).
Методы: Select (выделить); Clear (очистить).
Свойство: Name (имя).
Примеры. Sheets("Протокол").Range("В4:В10").Name = "Класс" диапазону В4:В10, расположенному на листе “Протокол”,
присвоить имя “Класс”; Sheets("Протокол").Range("В4:В10").Select выделить диапазон В4:В10 на листе “Протокол”.

38.

Методы и свойства некоторых объектов
VBA
Объект, Семейство: UserForm (пользовательская форма).
Методы: Show (показать); Hide (скрыть).
Свойство: Caption (текст, отображаемый в строке заголовка).
Примеры. UserForm1.Show - показать пользовательскую форму
номер один;
UserForm1.Hide - скрыть пользовательскую форму номер один;
UserForm1.Caption - "Информатика"- вывести заданный в кавычках
текст в строке заголовка.

39.

Методы и свойства некоторых объектов
VBA
Объект, Семейство: TextBox (Поле ввода).
Свойство: Text (содержимое).
Примеры. UserForm1.TextBox1.Text = Date - в поле ввода номер
один в пользовательской форме номер один записать текущую
дату; UserForm1.TextBox2.Text = " " - очистить поле ввода номер два
в пользовательской форме номер один.

40.

Методы и свойства некоторых объектов
VBA
Объект, Семейство: ComboBox (поле со списком).
Метод: AddItem (добавить элемент в список).
Свойства: Text (содержимое); Rowsource (источник строк для списка).
Примеры. UserForm1.ComboBox2.Text = " " - очистить значение поля для
поля ввода со списком номер два в пользовательской форме номер
один; UserForm2.ComboBox1.Rowsource="В2:В10" - источником строк
для поля один со списком в пользовательской форме два установить
данные из диапазона В2:В10;
UserForm1.ComboBox1.AddItem ("Факс") - добавить к списку элемент,
заключенный в кавычки.

41.

Методы и свойства некоторых объектов
VBA
Объект, Семейство: OptionButton.
Свойства: Value (значение); Сaption (надпись).
Примеры. UserForm3.OptionButton1.Value = True - выбрать переключатель
номер один в пользовательской форме номер три;
UserForm3.OptionButton1.Capture = "Успеваемость" - установить надпись
“Успеваемость” рядом с переключателем в пользовательской форме номер
три.
Объект, Семейство: CheckBox.
Свойства: Value (значение); Сaption (надпись).
Примеры. UserForm2.CheckBox1.Value = True - установить флажок номер один в
пользовательской форме номер два; UserForm3.CheckBox1.Value = False сбросить флажок номер один в пользовательской форме номер три;
UserForm4.CheckBox1.Capture="Класс" - установить надпись “Класс” рядом с
флажком в пользовательской форме номер четыре.

42.

События
Событие представляет собой действие, распознаваемое объектом (например,
щелчок мышью или нажатие клавиши, перемещение мыши или выход из
программы), для которого можно запрограммировать отклик, т.е. реакцию
объекта на произошедшее событие.
В языке VBA для каждого объекта определен набор стандартных событий.
Стандартное событие для объекта “кнопка” (CommandButton) - щелчок мышью
(Click).
Если пользователь нажимает на кнопку, то это событие. На это событие
должен быть отклик, т.е. выполнение какой-либо программы. Такая
программа называется процедурой обработки событий и имеет стандартное
имя. Если такой отклик не создан (не написана соответствующая программа),
то система никак не будет реагировать на это событие.

43.

Типы данных
Элементы языка VBA
Объекты - основные элементы языка VBA, но не единственные. К другим элементам относятся:
константы, переменные, массивы, выражения, встроенные функции, встроенные диалоговые окна,
операторы.
Константы - данные, не изменяющиеся в процессе решения задачи. Константы бывают двух видов:
числовые и символьные.
Числовые константы - это целые либо вещественные числа.
Символьные константы - текст, заключенный в кавычки. Пример числовой константы - 5,8
(использование запятой или точки зависит от настроек операционной системы). Пример символьной
константы - ООО “Темп”.
Переменные - данные, значения которых меняются в ходе выполнения программы. Для переменной
задается имя и тип.
Имя переменной должно начинаться с буквы и может содержать любую комбинацию букв, цифр и
символов за исключением точек, пробелов и следующих символов: “!”, “%”, “&”, “$”, “#”, “@”. Длина
имени не должна превышать 255 символов. Не следует использовать имена, совпадающие с ключевыми
словами VBA и именами встроенных функций и процедур.
Основные типы переменных, их размеры и диапазоны принимаемых значений приведены в табл. 1.

44.

Типы данных

45.

Типы данных
1. Boolean - cодержит значения, которые могут быть только true или False. Ключевые True слова
и False соответствуют двум состояниям переменных Boolean .
Используйте логический тип данных (Visual Basic), чтобы установить значения двух состояний, такие
как true/false, да/нет или вкл./выкл.
Boolean значения не хранятся в виде чисел, а сохраненные значения не должны быть эквивалентными
числам.
2. Byte - cодержит 8-разрядные целые числа без знака (1 байт), которые варьируются от 0 до 255.
Значение по умолчанию для типа byte равно 0.
3. Char - cодержит 16-разрядные (2-байтовые) кодовые точки без знака в диапазоне от 0 до 65535.
Каждая кодовая точка или код символа представляет один символ Юникода.

46.

Типы данных
4. Date - cодержит 64-разрядные (8-байтные) значения IEEE, представляющие даты в диапазоне от 1
января 0001 года до 31 декабря 9999 года и время от 00:00:00 (полночь) до 23:59:9999999. Каждое
приращение представляет 100 наносекунд затраченного времени с начала 1 января 1 года по
григорианскому календарю. Максимальное значение представляет 100 наносекунд перед началом 1
января 10 000 года.

47.

Типы данных
5. Десятичные (decimal) - cодержит 128-разрядные (16-байтные) значения со знаком, представляющие
96-разрядные (12-байтные) целые числа с переменной степенью, кратной 10.
6. Double - cодержит числа с плавающей запятой с двойной точностью со знаком IEEE 64-разрядной (8байтовой) с плавающей запятой, которые варьируются от -1,79769313486231570E+308 до 4.94065645841246544E-324 для отрицательных значений и от 4,94065645841246544E-324 до
1,79769313486231570E+308 для положительных значений. Числа двойной точности хранят приближение
реального числа.
7. Integer - cодержит 32-разрядные (4-байтовые) целые числа со знаком в диапазоне от -2 147 483 648 до
2 147 483 647.
8. Long - cодержит 64-разрядные (8-байтовые) целые числа в диапазоне от -9 223 372 036 854 775 808 до
9 223 372 036 854 775 807 (9,2...E+18).
9. Object - cодержит адреса, ссылающиеся на объекты. Для переменной можно назначить
любой Object ссылочный тип (строка, массив, класс или интерфейс). Переменная Object также может
ссылаться на данные любого типа значения (числовой, Boolean, , CharDateструктурой или
перечислением).

48.

Типы данных
10. Single - cодержит числа с плавающей запятой с плавающей
запятой со знаком IEEE 32-разрядной (4,4028235E+38–1.401298E45E-45) для отрицательных значений и от 1,401298E-45 до
3,4028235E+38 для положительных значений. Числа с одной
точностью хранят приближение реального числа.
11. String - cодержит последовательности 16-разрядных (2байтовых) кодовых точек без знака, которые варьируются от 0 до
65535. Каждая кодовая точка или код символов представляет один
символ Юникода. Строка может содержать от 0 до примерно двух
миллиардов (2 ^ 31) символов Юникода.

49.

Элементы VBA
Объекты - основные элементы языка VBA, но не единственные. К другим элементам
относятся: константы, переменные, массивы, выражения, встроенные функции, встроенные
диалоговые окна, операторы.
Константы - данные, не изменяющиеся в процессе решения задачи. Константы бывают двух
видов: числовые и символьные.
Числовые константы - это целые либо вещественные числа.
Символьные константы - текст, заключенный в кавычки. Пример числовой константы - 5,8
(использование запятой или точки зависит от настроек операционной системы). Пример
символьной константы - ООО “Темп”.
Переменные - данные, значения которых меняются в ходе выполнения программы. Для
переменной задается имя и тип.
Имя переменной должно начинаться с буквы и может содержать любую комбинацию букв,
цифр и символов за исключением точек, пробелов и следующих символов: “!”, “%”, “&”, “$”,
“#”, “@”. Длина имени не должна превышать 255 символов. Не следует использовать имена,
совпадающие с ключевыми словами VBA и именами встроенных функций и процедур.

50.

Элементы VBA
Массив - упорядоченная совокупность однотипных переменных. Массивы имеют имя и размерность.
Имя массива подбирается с учетом тех же правил, что и имена переменных. Размерность - это
количество элементов (переменных), составляющих массив.
Из констант, переменных и встроенных функций (они рассмотрены далее) с помощью скобок и знаков
арифметических операций (“+”, “-”, “*”, “/”, “^”) можно составлять выражения. Частным случаем
выражения может быть просто одиночный элемент, т.е. константа, переменная или обращение к
встроенной функции.
Примеры выражений:
Z
(a+b)^2
45
sin(y)

51.

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

52.

Функции VBA

53.

Функции VBA
Кроме перечисленных функций, объект Applications позволяет вызвать более 400 встроенных функций
рабочего листа при помощи конструкции вида:
Application.Функция Рабочего Листа(Аргументы).
Примеры:
Application.Sum(Sheets("Проверка").Range("A1:B20")) - суммируются значения из ячеек диапазона
A1:B20, расположенного на листе “Проверка”;
Application.CountA(Sheets("Ученики").Range("A:A")) - подсчитывается количество непустых
ячеек в столбце А на листе “Ученики”.

54.

Структура редактора VBA
Вызвать редактор Alt+F11

55.

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

56.

Окно проекта и окно свойств
Окно проекта активизируется выбором команды Вид ® Окно проекта (View, Project window) или
нажатием кнопки Окно проекта . В окне проекта представлена иерархическая структура файлов, форм
и модулей текущего проекта.
но проекта.
В окне свойств перечисляются основные значения свойств выбранного объекта. Используя это окно,
можно просматривать свойства и изменить их значения. Для просмотра свойств выбранного объекта
надо выполнить команду Вид ® Окно свойств (Properties Windows) или нажатием кнопки .
Окно свойств состоит из двух составных частей: верхней и рабочей. В верхней части окна располагается
раскрывающийся список, из которого можно выбрать любой элемент управления текущей формы или
саму форму. Рабочая часть состоит из двух вкладок, в которых свойства располагаются По
алфавиту (Alphabetic) и По категориям (Categorized).

57.

Окно просмотра объектов
Окно для просмотра объектов (Object Browser)
Окно Просмотр объектов (Object Browser) вызывается
командой Вид ® Просмотр объектов (View, Object Browser) или
нажатием кнопки . В этом окне можно просматривать все объекты
проекта. Здесь вы найдете все свойства, методы и события,
связанные с любым объектом.
Окно Просмотр объектов состоит из трех основных частей:
1. Раскрывающегося списка Проект/Библиотека в верхнем левом
углу экрана. Например, библиотеки объектов Excel, VBA, Office и
VBAProject (объекты пользовательского проекта).
2. Списка Классы. Выводятся все классы выбранной библиотеки.
3. Списка Компоненты (Members). Выводятся все компоненты
выбранного класса.
Это окно предоставляет доступ ко всем объектам, свойствам,
методам и событиям.
English     Русский Rules