SlideShare a Scribd company logo
1 of 44
Тема:Тема:
ВыходВыход
Программа – это законченная
последовательность команд
(инструкций) языка
программирования,
описывающая алгоритм решения
поставленной задачи.
Программы на языке VBA
создаются в виде процедур.
ВыходВыход
Процедура – именованная
последовательность совместно
выполняемых инструкций,
заключенных между ключевыми
словами Sub и End Sub.
Инструкция – представляет
собой операцию (отдельное
действие), описание или
определение.
ВыходВыход
Инструкция VBA является полной командой и может
содержать:
1.ключевые слова - слова или символы, распознаваемые
как элемент VBA;
2.операторы - знаки операции в выражениях;
3.переменные - именованная область памяти, отведенная
для временного хранения данных, которые могут
изменяться во время выполнения программы;
4.константы - именованный элемент сохраняющий
постоянное неизменное значение в процессе
выполнения программы;
5.выражения - комбинация ключевых слов, операторов,
переменных и констант, результатом которой является
строка, число или объект (используются для выполнения
вычислений, обработки символов или проверки
данных).
ВыходВыход
Инструкции могут быть следующих типов:
• инструкции описания - именуют
переменные, константы или процедуры, а
также могут задавать типы данных;
• инструкции присвоения - присваивают
значение или выражение переменной или
константе;
• исполняемые инструкции - инициируют
действие. Они могут выполнить метод или
функцию, а также могут организовать
повторение или ветвление блоков
программы. Эти инструкции часто содержат
математические или условные операторы.
ВыходВыход
Для пояснения процедуры или
определенной инструкции
используются комментарии, при
выполнении процедуры они
игнорируются.
Их можно вносить в любое место
процедуры, начиная с апострофа (')
или со слова Rem, за которым
следует пробел.
ВыходВыход
Совокупность созданных
пользователем и хранящихся
совместно процедур
составляют модуль.
В документе или рабочей
книге допускается любое
количество модулей.
ВыходВыход
VBA позволяет создавать
такие типы процедур как:
1.процедуры-подпрограммы,
2.процедуры-функции.
ВыходВыход
Процедура-подпрограмма – это
самостоятельная программная единица VBA,
включающая различные типы инструкций.
Процедура-подпрограмма всегда
начинается с ключевого слова Sub, после
которого следует имя процедуры (у каждой
процедуры должно быть уникальное имя), а
затем - пара круглых скобок. В скобки
заключаются аргументы, но если у
подпрограммы их нет, они остаются пустыми.
Ключевое слово End Sub говорит об
окончании подпрограммы. Строки,
заключенные между этими двумя ключевыми
словами, составляют тело процедуры.
ВыходВыход
Синтаксис записи
процедур-подпрограмм
имеет вид:
Sub имя([аргументы])
Инструкции языка VBA
End Sub
ВыходВыход
Процедура-функция является
процедурой, в результате выполнения
которой формируется некоторое значение.
Вызов процедуры-функции может
использоваться в качестве операнда в
выражении. Процедура-функция всегда
возвращает единственное значение.
Ее можно запустить из другой VBA-
процедуры или использовать в формулах
рабочего листа Excel как самостоятельную
программную единицу, точно так же как и
встроенные функции.
ВыходВыход
Процедура-функция начинается
ключевым словом Function и
заканчивается End Function.
После Function всегда указывается
имя функции с аргументами,
указанными в круглых скобках.
В конце тела процедуры
необходимо указать инструкцию
имя=выражение для задания
возвращаемого значения.
ВыходВыход
Синтаксис записи процедур-
функций имеет вид:
Function имя([аргументы])
Инструкции языка VBA
имя=выражение
End Function
ВыходВыход
Переменные и типы данных
Переменной называется
имя, определяющее
область памяти для
хранения величины,
которая может изменяться
во время работы
программы.
ВыходВыход
Перед использованием
переменной в программе
ее необходимо объявить,
т.е. задать ее тип и область
видимости (область
использования
переменной).
ВыходВыход
Создание переменной путем ее
использования в операторе
называется неявным
объявлением переменной.
Явно объявлять переменные
можно в начале программы и в том
произвольном месте, где возникла
необходимость использовать
новую переменную.
ВыходВыход
Переменные можно
объявлять на двух уровнях:
•на уровне процедуры;
•на уровне модуля.
ВыходВыход
Для объявлeния пеpeмeнныx
иcпoльзуются операторы Dim,
Public, Private и Static.
• Dim можно использовать на
уровне процедуры и уровне
модуля,
• Public и Private — на уровне
модуля,
• Static — только на уровне
процедуры. ВыходВыход
Синтаксис объявления
переменных:
{Dim|Public|Private|Static}
VariableName [As] [Type]
ВыходВыход
Объявление простых переменных:
Dim <имя переменной1, имя переменной2,
…> As <имя типа>
или
Dim <имя переменной1> As <имя типа1>,
<имя переменной2> As <имя типа2>,
<имя переменной3> As <имя типа3>,…
Если используется ключевое слово As,
топеременная называется
типизированной.
ВыходВыход
Пример объявления типизированных
переменных:
Dim ключ As single
Dim стоимость As currency
Dim дата_рождения As Date
Dim письмо As string
Имена переменных не «чувствительны» к
регистру, т.е. переменные f и F в программе
означают одно и то же.
ВыходВыход
Область видимости переменных –
это область программы, где имя
переменной считается доступным
(видимым), а, значит возможен
доступ к ее значению.
Область видимости задается с
помощью одного из четырех
ключевых слов:
Dim|Public|Private|Static
ВыходВыход
Объявление переменной на
уровне процедуры
Ключевое слово Dim используется
для объявления переменной
на уровне процедуры
Переменная, объявленная на
уровне процедуры называется
локальной (доступна только в той
процедуре, где объявлена).
ВыходВыход
Объявление переменной на уровне
модуля
Переменные уровня модуля являются
глобальными. Они объявляются в разделе
Declarations, который есть у каждого модуля.
Область видимости глобальных переменных может
распространяться:
•на все процедуры одного модуля, в котором они
объявлены; такие глобальные переменные,
называемые закрытыми (Private), должны быть
объявлены на уровне модуля либо оператором
Private либо оператором Dim;
•на все приложение — все процедуры всех
модулей данного приложения; такие глобальные
переменные, называемые открытыми (Public),
должны быть объявлены оператором Public. ВыходВыход
Время жизни переменных
Время жизни
переменных – время, в
течение которого
переменная может иметь
значение.
ВыходВыход
Типы данных
Данными называются объекты,
обрабатываемые программой.
Тип данных определяет размер,
диапазон значений данных и
операции, которые могут
выполняться над данными.
VBA разделяет обрабатываемые
данные на числа, даты, строки,
логические значения и объекты.
ВыходВыход
Типы данных
Типы данных,
используемые при
написании программ на
VBA делятся на:
1.встроенные и
2.определяемые
пользователем.
ВыходВыход
VBA как и любой другой язык
программирования имеет такие
встроенные типы данных:
•числовые – числа, которые
различаются размером и диапазоном
допустимых значений;
•символьные – строки символов
фиксированной или переменной длины;
•логические – логические значения
(например, Да/Нет или True/False).
ВыходВыход
ИМЯ ТИПА ВОЗМОЖНЫЕ ЗНАЧЕНИЯ ТРЕБУЕМАЯ
ПАМЯТЬ
Boolean True, False 2 байта
Byte 0…255 1 байт
Integer -32768 …+32767 2 байта
Long Примерно: -2000 000 000…+2000 000 000 4 байта
Decimal Примерно 30 десятичных цифр. Можно указать число цифр
после десятичной точки.
12 байтов
Single - 3,4E38 …-1,4 E-45 для отрицательных значений 1,4E-45
… 3,4E38 для положительных значений
4 байта
Double -1,7E308 … -4,9E-324 для отрицательных значений
4,9E-324 … 1,7E308 для положительных значений
8 байтов
Currency Десятичные числа с фиксированной позицией запятой.
Возможны 15 цифр до запятой и 4 после.
8 байтов
String Есть два вида строк:
Строки фиксированной длины имеют до 216
символов.
Строки переменной длины имеют до 2 31
символов.
10 байтов +1 байт на
символ в обычной
кодировке и 2
байта в кодировке
Unicode
Date Даты изменяются в диапазоне от 1 января 100 г. до 31
декабря 9999 г.
8 байтов
Object Ссылка на объект (указатель) 4 байта
Variant Универсальный тип, значением которого могут быть
данные любого из перечисленных выше типов,
объекты, значения NULL и значения ошибок ERROR
Зависит от контекста,
но не менее 16
байтов
ВыходВыход
VBA не требует обязательного
объявления переменных. В случае
если переменная не была
объявлена, ей автоматически
присваивается тип Variant.
Этот тип является универсальным
и может содержать данные
различных подтипов: Integer, Long,
String и т. п.
ВыходВыход
Соглашения об именах констант и
переменных:
При написании программ на
VBA принято придерживаться
определенных правил.
Например, при объявлении
переменной типа Integer в
начале имени ставится
специальный префикс int.
ВыходВыход
Тип
данных
Префикс Тип
данных
Префикс
Boolean Bin Long lng
Byte Byt Object obj
Currency Cur Single sng
Date
(Time)
Dtm String str
Double Dbl Variant Vnt
ВыходВыход
Для задания определяемых
пользователем типов данных
используется инструкция Type.
Определяемые пользователем
типы данных могут включать в
себя один или несколько
элементов любого типа данных.
ВыходВыход
Синтаксис инструкции Type:
Type имя_переменной
имя_элемента1 As тип
[имя_элемента2 As тип]
…
End Type
здесь имя_переменной – имя, которое
требуется присвоить определяемому
типу, а имя_элемента - имя элемента
определяемого пользователем типа
ВыходВыход
Константы
Константа – это значение в VBA,
которое не меняется. Существует
несколько типов констант:
•Именованные;
•Численные;
•Константы Date;
•Константы Boolean;
•Типизированные константы;
•Внутренние константы.
ВыходВыход
Именованные константы – константы,
имеющие заданное имя; это имя имеет
конкретное неизменяемое значение.
В отличие от переменной, необходимо
всегда явно объявлять именованные
константы, используя ключевое слово
Const.
Следует помещать объявления
констант на модульном уровне, чтобы у
них была наибольшая область действия.
ВыходВыход
Литеральные константы – это константы,
записываемые непосредственно в код.
Правила написания литеральных констант
(String, Integer, Data, Boolean):
•строковые константы должны быть
заключены в двойные кавычки (" ");
•пустая строковая константа (нулевая строка)
обозначается двумя двойными кавычками,
между которыми ничего нет ("");
•строковая константа должна вся находиться
на одной и той же строке. Нельзя использовать
символ продолжения строки для продолжения
литеральной (строковой) константы на другой
строке.
ВыходВыход
Численные константы могут содержать любой из
численных типов VBA.
Правила написания численных констант:
•численные константы должны состоять только из
числовых символов от 0 до 9;
•численная константа может начинаться со знака
минус и содержать десятичную точку;
•можно использовать экспоненциальное
представление для численных констант;
•никакие другие символы или знаки в численных
константах не допускаются.
Примеры:
– 142
– – 789.3
– 5.55Е4 ВыходВыход
Константы Date необходимо
помещать между знаками фунта (#).
Независимо от того, в каком из
форматов записывается литеральная
константа Date, VBA переформатирует
эту константу для соответствия одному
из двух следующих форматов – в
зависимости от того, содержит ли
константа Date информацию о времени:
•#2/5/02 9:17:00 PM#
•#2/5/02#
ВыходВыход
Константы Boolean –
существуют только две
правильные константы
типа Boolean:
True и False.
ВыходВыход
Типизированные константы используются при
явном задании типа константы. Объявление
конкретного типа данных для константы может
повысить точность вычислений. Для констант
можно использовать типы данных Byte, Boolean,
Integer, Long, Single, Double, Currency, Date, String.
Синтаксис:
Const имя_константы As type = value, name As
type = value,…
где type – имя любого из типов данных VBA;
value – значение, присваиваемое константе.
Пример:
Const Pi As Double = 3.14
ВыходВыход
Внутренние константы
называются также
предопределенными
константами.
Внутренняя константа – это
именованная константа, которая
была определена разработчиками
VBA. Внутренние константы все
начинаются с букв vb для указания
того, что они определяются
языком VBA.
ВыходВыход
Математические функции
ВыходВыход

More Related Content

What's hot

презентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работампрезентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работамstudent_kai
 
C++ осень 2013 лекция 5
C++ осень 2013 лекция 5C++ осень 2013 лекция 5
C++ осень 2013 лекция 5Technopark
 
Некоторые элементы функциональных языков программирования
Некоторые элементы функциональных языков программированияНекоторые элементы функциональных языков программирования
Некоторые элементы функциональных языков программированияAlexander Byndyu
 
C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.Igor Shkulipa
 
C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.Igor Shkulipa
 
Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.Елена Никонова
 
Преобразования типов. Операторы ветвления
Преобразования типов. Операторы ветвленияПреобразования типов. Операторы ветвления
Преобразования типов. Операторы ветвленияIhor Porotikov
 
Лекция 6_принципы ООП : инкапсуляция, наследование
Лекция 6_принципы ООП : инкапсуляция, наследованиеЛекция 6_принципы ООП : инкапсуляция, наследование
Лекция 6_принципы ООП : инкапсуляция, наследованиеmetaform
 
апкс 2011 05_verilog
апкс 2011 05_verilogапкс 2011 05_verilog
апкс 2011 05_verilogIrina Hahanova
 
подпрограммы в языке программирования паскаль
подпрограммы в языке программирования паскальподпрограммы в языке программирования паскаль
подпрограммы в языке программирования паскальArtem German
 
Structural project description in VHDL
Structural project description in VHDLStructural project description in VHDL
Structural project description in VHDLvitaliykulanov
 
Subprograms in VHDL, Procedures in VHDL
Subprograms in VHDL, Procedures in VHDLSubprograms in VHDL, Procedures in VHDL
Subprograms in VHDL, Procedures in VHDLvitaliykulanov
 
C++ Базовый. Занятие 03.
C++ Базовый. Занятие 03.C++ Базовый. Занятие 03.
C++ Базовый. Занятие 03.Igor Shkulipa
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Javametaform
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Javametaform
 
C++ осень 2013 лекция 2
C++ осень 2013 лекция 2C++ осень 2013 лекция 2
C++ осень 2013 лекция 2Technopark
 
Флажок - переключатель - Мемо
Флажок - переключатель - МемоФлажок - переключатель - Мемо
Флажок - переключатель - МемоDbeshenov
 
C++ Базовый. Занятие 02.
C++ Базовый. Занятие 02.C++ Базовый. Занятие 02.
C++ Базовый. Занятие 02.Igor Shkulipa
 

What's hot (20)

презентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работампрезентация кметодическим указаниям к лаб. работам
презентация кметодическим указаниям к лаб. работам
 
C++ осень 2013 лекция 5
C++ осень 2013 лекция 5C++ осень 2013 лекция 5
C++ осень 2013 лекция 5
 
Некоторые элементы функциональных языков программирования
Некоторые элементы функциональных языков программированияНекоторые элементы функциональных языков программирования
Некоторые элементы функциональных языков программирования
 
C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.C++ Базовый. Занятие 04.
C++ Базовый. Занятие 04.
 
лек5 6
лек5 6лек5 6
лек5 6
 
лек11 4
лек11 4лек11 4
лек11 4
 
C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.C++ Базовый. Занятие 01.
C++ Базовый. Занятие 01.
 
Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.Основы алгоритмического и объектно ориентированного программирования.
Основы алгоритмического и объектно ориентированного программирования.
 
Преобразования типов. Операторы ветвления
Преобразования типов. Операторы ветвленияПреобразования типов. Операторы ветвления
Преобразования типов. Операторы ветвления
 
Лекция 6_принципы ООП : инкапсуляция, наследование
Лекция 6_принципы ООП : инкапсуляция, наследованиеЛекция 6_принципы ООП : инкапсуляция, наследование
Лекция 6_принципы ООП : инкапсуляция, наследование
 
апкс 2011 05_verilog
апкс 2011 05_verilogапкс 2011 05_verilog
апкс 2011 05_verilog
 
подпрограммы в языке программирования паскаль
подпрограммы в языке программирования паскальподпрограммы в языке программирования паскаль
подпрограммы в языке программирования паскаль
 
Structural project description in VHDL
Structural project description in VHDLStructural project description in VHDL
Structural project description in VHDL
 
Subprograms in VHDL, Procedures in VHDL
Subprograms in VHDL, Procedures in VHDLSubprograms in VHDL, Procedures in VHDL
Subprograms in VHDL, Procedures in VHDL
 
C++ Базовый. Занятие 03.
C++ Базовый. Занятие 03.C++ Базовый. Занятие 03.
C++ Базовый. Занятие 03.
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Java
 
Классы и объекты в Java
Классы и объекты в JavaКлассы и объекты в Java
Классы и объекты в Java
 
C++ осень 2013 лекция 2
C++ осень 2013 лекция 2C++ осень 2013 лекция 2
C++ осень 2013 лекция 2
 
Флажок - переключатель - Мемо
Флажок - переключатель - МемоФлажок - переключатель - Мемо
Флажок - переключатель - Мемо
 
C++ Базовый. Занятие 02.
C++ Базовый. Занятие 02.C++ Базовый. Занятие 02.
C++ Базовый. Занятие 02.
 

Viewers also liked

TZed waste management
TZed waste managementTZed waste management
TZed waste managementADDA
 
Premio AIGU
Premio AIGUPremio AIGU
Premio AIGUaigu
 
массивы
массивымассивы
массивыLidiKashka
 
Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725
Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725
Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725Sandeepnextgen
 
Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725
Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725
Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725Sandeepnextgen
 
нано технологийг хөдөө аж ахуйд хэрэглэх нь
нано технологийг хөдөө аж ахуйд хэрэглэх ньнано технологийг хөдөө аж ахуйд хэрэглэх нь
нано технологийг хөдөө аж ахуйд хэрэглэх ньZaya Shirentogtokh
 
2017 03-02 (вебинар 7)
2017 03-02 (вебинар 7)2017 03-02 (вебинар 7)
2017 03-02 (вебинар 7)Pavel Kallinikov
 
Основы ооп на языке C#. Часть 2. базовый синтаксис.
Основы ооп на языке C#. Часть 2. базовый синтаксис.Основы ооп на языке C#. Часть 2. базовый синтаксис.
Основы ооп на языке C#. Часть 2. базовый синтаксис.YakubovichDA
 
Clasificacion de las empresas
Clasificacion de las empresasClasificacion de las empresas
Clasificacion de las empresasVivi Montero
 
Opower - Green Gamification - Manu Melwin Joy
Opower - Green Gamification - Manu Melwin JoyOpower - Green Gamification - Manu Melwin Joy
Opower - Green Gamification - Manu Melwin Joymanumelwin
 
Mary Had a Little Lamb
Mary Had a Little LambMary Had a Little Lamb
Mary Had a Little LambMEA Music
 
Diseño mezclas metodo marshall
Diseño mezclas   metodo marshallDiseño mezclas   metodo marshall
Diseño mezclas metodo marshallCristian Flores
 

Viewers also liked (18)

TZed waste management
TZed waste managementTZed waste management
TZed waste management
 
Premio AIGU
Premio AIGUPremio AIGU
Premio AIGU
 
массивы
массивымассивы
массивы
 
Dengue.
Dengue.Dengue.
Dengue.
 
Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725
Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725
Bluewaters Island - Meraas Ain Dubai Brochure +971 4553 8725
 
Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725
Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725
Akoya Chelsea Boutique Villas - Akoya Oxygen +971 45538725
 
нано технологийг хөдөө аж ахуйд хэрэглэх нь
нано технологийг хөдөө аж ахуйд хэрэглэх ньнано технологийг хөдөө аж ахуйд хэрэглэх нь
нано технологийг хөдөө аж ахуйд хэрэглэх нь
 
2017 03-02 (вебинар 7)
2017 03-02 (вебинар 7)2017 03-02 (вебинар 7)
2017 03-02 (вебинар 7)
 
Основы ооп на языке C#. Часть 2. базовый синтаксис.
Основы ооп на языке C#. Часть 2. базовый синтаксис.Основы ооп на языке C#. Часть 2. базовый синтаксис.
Основы ооп на языке C#. Часть 2. базовый синтаксис.
 
Microwave linear beam 31
Microwave linear beam 31Microwave linear beam 31
Microwave linear beam 31
 
ECONOMICS
ECONOMICSECONOMICS
ECONOMICS
 
Clasificacion de las empresas
 Clasificacion de las empresas Clasificacion de las empresas
Clasificacion de las empresas
 
Clasificacion de las empresas
Clasificacion de las empresasClasificacion de las empresas
Clasificacion de las empresas
 
Opower - Green Gamification - Manu Melwin Joy
Opower - Green Gamification - Manu Melwin JoyOpower - Green Gamification - Manu Melwin Joy
Opower - Green Gamification - Manu Melwin Joy
 
La Hoja
La HojaLa Hoja
La Hoja
 
Mary Had a Little Lamb
Mary Had a Little LambMary Had a Little Lamb
Mary Had a Little Lamb
 
Danza laura giraldo
Danza laura giraldoDanza laura giraldo
Danza laura giraldo
 
Diseño mezclas metodo marshall
Diseño mezclas   metodo marshallDiseño mezclas   metodo marshall
Diseño mezclas metodo marshall
 

Similar to Vba программы

язык програмирования
язык програмированияязык програмирования
язык програмированияOlegmingalev1997
 
вспомогательные алгоритмы
вспомогательные алгоритмывспомогательные алгоритмы
вспомогательные алгоритмыЕлена Ключева
 
Опыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NET
Опыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NETОпыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NET
Опыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NETGoSharp
 
Отладка и оптимизация многопоточных OpenMP-программ
Отладка и оптимизация многопоточных OpenMP-программОтладка и оптимизация многопоточных OpenMP-программ
Отладка и оптимизация многопоточных OpenMP-программTatyanazaxarova
 
лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)djbelyakk
 
ук 03.009.01 2011
ук 03.009.01 2011ук 03.009.01 2011
ук 03.009.01 2011etyumentcev
 
Inroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPInroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPmikhailshurgulaya
 
C# Desktop. Занятие 16.
C# Desktop. Занятие 16.C# Desktop. Занятие 16.
C# Desktop. Занятие 16.Igor Shkulipa
 
20090721 hpc exercise2
20090721 hpc exercise220090721 hpc exercise2
20090721 hpc exercise2Michael Karpov
 
Cреда программирования
Cреда программированияCреда программирования
Cреда программированияirina8682
 
10 10 pascal_urok_
10 10 pascal_urok_10 10 pascal_urok_
10 10 pascal_urok_Ann Eres
 

Similar to Vba программы (20)

язык програмирования
язык програмированияязык програмирования
язык програмирования
 
вспомогательные алгоритмы
вспомогательные алгоритмывспомогательные алгоритмы
вспомогательные алгоритмы
 
лекция 4
лекция 4лекция 4
лекция 4
 
лекция 4
лекция 4лекция 4
лекция 4
 
Podprogram
PodprogramPodprogram
Podprogram
 
Опыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NET
Опыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NETОпыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NET
Опыт разработки сложных клиент-серверных приложений на TypeScript и ASP.NET
 
Отладка и оптимизация многопоточных OpenMP-программ
Отладка и оптимизация многопоточных OpenMP-программОтладка и оптимизация многопоточных OpenMP-программ
Отладка и оптимизация многопоточных OpenMP-программ
 
лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)лекции спрг 6_семестр (1)
лекции спрг 6_семестр (1)
 
Step 2
Step 2Step 2
Step 2
 
ук 03.009.01 2011
ук 03.009.01 2011ук 03.009.01 2011
ук 03.009.01 2011
 
Inroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPInroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAP
 
C# Desktop. Занятие 16.
C# Desktop. Занятие 16.C# Desktop. Занятие 16.
C# Desktop. Занятие 16.
 
20090721 hpc exercise2
20090721 hpc exercise220090721 hpc exercise2
20090721 hpc exercise2
 
паскаль 10кл 14
паскаль 10кл 14паскаль 10кл 14
паскаль 10кл 14
 
Cреда программирования
Cреда программированияCреда программирования
Cреда программирования
 
алгоритмы и их виды
алгоритмы и их видыалгоритмы и их виды
алгоритмы и их виды
 
10 10 pascal_urok_
10 10 pascal_urok_10 10 pascal_urok_
10 10 pascal_urok_
 
алгоритмы и их виды
алгоритмы и их видыалгоритмы и их виды
алгоритмы и их виды
 
лек13 4
лек13 4лек13 4
лек13 4
 
алгоритмы и их виды
алгоритмы и их видыалгоритмы и их виды
алгоритмы и их виды
 

More from LidiKashka

функции работы с датой и временем
функции работы с датой и временемфункции работы с датой и временем
функции работы с датой и временемLidiKashka
 
объекты Word
объекты Wordобъекты Word
объекты WordLidiKashka
 
объекты Excel
объекты Excelобъекты Excel
объекты ExcelLidiKashka
 
объекты и классы
объекты и классыобъекты и классы
объекты и классыLidiKashka
 
встроен функции
встроен функциивстроен функции
встроен функцииLidiKashka
 

More from LidiKashka (7)

функции работы с датой и временем
функции работы с датой и временемфункции работы с датой и временем
функции работы с датой и временем
 
ооп
оопооп
ооп
 
объекты Word
объекты Wordобъекты Word
объекты Word
 
объекты Excel
объекты Excelобъекты Excel
объекты Excel
 
объекты и классы
объекты и классыобъекты и классы
объекты и классы
 
записи
записизаписи
записи
 
встроен функции
встроен функциивстроен функции
встроен функции
 

Vba программы

  • 1.
  • 3. Программа – это законченная последовательность команд (инструкций) языка программирования, описывающая алгоритм решения поставленной задачи. Программы на языке VBA создаются в виде процедур. ВыходВыход
  • 4. Процедура – именованная последовательность совместно выполняемых инструкций, заключенных между ключевыми словами Sub и End Sub. Инструкция – представляет собой операцию (отдельное действие), описание или определение. ВыходВыход
  • 5. Инструкция VBA является полной командой и может содержать: 1.ключевые слова - слова или символы, распознаваемые как элемент VBA; 2.операторы - знаки операции в выражениях; 3.переменные - именованная область памяти, отведенная для временного хранения данных, которые могут изменяться во время выполнения программы; 4.константы - именованный элемент сохраняющий постоянное неизменное значение в процессе выполнения программы; 5.выражения - комбинация ключевых слов, операторов, переменных и констант, результатом которой является строка, число или объект (используются для выполнения вычислений, обработки символов или проверки данных). ВыходВыход
  • 6. Инструкции могут быть следующих типов: • инструкции описания - именуют переменные, константы или процедуры, а также могут задавать типы данных; • инструкции присвоения - присваивают значение или выражение переменной или константе; • исполняемые инструкции - инициируют действие. Они могут выполнить метод или функцию, а также могут организовать повторение или ветвление блоков программы. Эти инструкции часто содержат математические или условные операторы. ВыходВыход
  • 7. Для пояснения процедуры или определенной инструкции используются комментарии, при выполнении процедуры они игнорируются. Их можно вносить в любое место процедуры, начиная с апострофа (') или со слова Rem, за которым следует пробел. ВыходВыход
  • 8. Совокупность созданных пользователем и хранящихся совместно процедур составляют модуль. В документе или рабочей книге допускается любое количество модулей. ВыходВыход
  • 9. VBA позволяет создавать такие типы процедур как: 1.процедуры-подпрограммы, 2.процедуры-функции. ВыходВыход
  • 10. Процедура-подпрограмма – это самостоятельная программная единица VBA, включающая различные типы инструкций. Процедура-подпрограмма всегда начинается с ключевого слова Sub, после которого следует имя процедуры (у каждой процедуры должно быть уникальное имя), а затем - пара круглых скобок. В скобки заключаются аргументы, но если у подпрограммы их нет, они остаются пустыми. Ключевое слово End Sub говорит об окончании подпрограммы. Строки, заключенные между этими двумя ключевыми словами, составляют тело процедуры. ВыходВыход
  • 11. Синтаксис записи процедур-подпрограмм имеет вид: Sub имя([аргументы]) Инструкции языка VBA End Sub ВыходВыход
  • 12. Процедура-функция является процедурой, в результате выполнения которой формируется некоторое значение. Вызов процедуры-функции может использоваться в качестве операнда в выражении. Процедура-функция всегда возвращает единственное значение. Ее можно запустить из другой VBA- процедуры или использовать в формулах рабочего листа Excel как самостоятельную программную единицу, точно так же как и встроенные функции. ВыходВыход
  • 13. Процедура-функция начинается ключевым словом Function и заканчивается End Function. После Function всегда указывается имя функции с аргументами, указанными в круглых скобках. В конце тела процедуры необходимо указать инструкцию имя=выражение для задания возвращаемого значения. ВыходВыход
  • 14. Синтаксис записи процедур- функций имеет вид: Function имя([аргументы]) Инструкции языка VBA имя=выражение End Function ВыходВыход
  • 15. Переменные и типы данных Переменной называется имя, определяющее область памяти для хранения величины, которая может изменяться во время работы программы. ВыходВыход
  • 16. Перед использованием переменной в программе ее необходимо объявить, т.е. задать ее тип и область видимости (область использования переменной). ВыходВыход
  • 17. Создание переменной путем ее использования в операторе называется неявным объявлением переменной. Явно объявлять переменные можно в начале программы и в том произвольном месте, где возникла необходимость использовать новую переменную. ВыходВыход
  • 18. Переменные можно объявлять на двух уровнях: •на уровне процедуры; •на уровне модуля. ВыходВыход
  • 19. Для объявлeния пеpeмeнныx иcпoльзуются операторы Dim, Public, Private и Static. • Dim можно использовать на уровне процедуры и уровне модуля, • Public и Private — на уровне модуля, • Static — только на уровне процедуры. ВыходВыход
  • 21. Объявление простых переменных: Dim <имя переменной1, имя переменной2, …> As <имя типа> или Dim <имя переменной1> As <имя типа1>, <имя переменной2> As <имя типа2>, <имя переменной3> As <имя типа3>,… Если используется ключевое слово As, топеременная называется типизированной. ВыходВыход
  • 22. Пример объявления типизированных переменных: Dim ключ As single Dim стоимость As currency Dim дата_рождения As Date Dim письмо As string Имена переменных не «чувствительны» к регистру, т.е. переменные f и F в программе означают одно и то же. ВыходВыход
  • 23. Область видимости переменных – это область программы, где имя переменной считается доступным (видимым), а, значит возможен доступ к ее значению. Область видимости задается с помощью одного из четырех ключевых слов: Dim|Public|Private|Static ВыходВыход
  • 24. Объявление переменной на уровне процедуры Ключевое слово Dim используется для объявления переменной на уровне процедуры Переменная, объявленная на уровне процедуры называется локальной (доступна только в той процедуре, где объявлена). ВыходВыход
  • 25. Объявление переменной на уровне модуля Переменные уровня модуля являются глобальными. Они объявляются в разделе Declarations, который есть у каждого модуля. Область видимости глобальных переменных может распространяться: •на все процедуры одного модуля, в котором они объявлены; такие глобальные переменные, называемые закрытыми (Private), должны быть объявлены на уровне модуля либо оператором Private либо оператором Dim; •на все приложение — все процедуры всех модулей данного приложения; такие глобальные переменные, называемые открытыми (Public), должны быть объявлены оператором Public. ВыходВыход
  • 26. Время жизни переменных Время жизни переменных – время, в течение которого переменная может иметь значение. ВыходВыход
  • 27. Типы данных Данными называются объекты, обрабатываемые программой. Тип данных определяет размер, диапазон значений данных и операции, которые могут выполняться над данными. VBA разделяет обрабатываемые данные на числа, даты, строки, логические значения и объекты. ВыходВыход
  • 28. Типы данных Типы данных, используемые при написании программ на VBA делятся на: 1.встроенные и 2.определяемые пользователем. ВыходВыход
  • 29. VBA как и любой другой язык программирования имеет такие встроенные типы данных: •числовые – числа, которые различаются размером и диапазоном допустимых значений; •символьные – строки символов фиксированной или переменной длины; •логические – логические значения (например, Да/Нет или True/False). ВыходВыход
  • 30. ИМЯ ТИПА ВОЗМОЖНЫЕ ЗНАЧЕНИЯ ТРЕБУЕМАЯ ПАМЯТЬ Boolean True, False 2 байта Byte 0…255 1 байт Integer -32768 …+32767 2 байта Long Примерно: -2000 000 000…+2000 000 000 4 байта Decimal Примерно 30 десятичных цифр. Можно указать число цифр после десятичной точки. 12 байтов Single - 3,4E38 …-1,4 E-45 для отрицательных значений 1,4E-45 … 3,4E38 для положительных значений 4 байта Double -1,7E308 … -4,9E-324 для отрицательных значений 4,9E-324 … 1,7E308 для положительных значений 8 байтов Currency Десятичные числа с фиксированной позицией запятой. Возможны 15 цифр до запятой и 4 после. 8 байтов String Есть два вида строк: Строки фиксированной длины имеют до 216 символов. Строки переменной длины имеют до 2 31 символов. 10 байтов +1 байт на символ в обычной кодировке и 2 байта в кодировке Unicode Date Даты изменяются в диапазоне от 1 января 100 г. до 31 декабря 9999 г. 8 байтов Object Ссылка на объект (указатель) 4 байта Variant Универсальный тип, значением которого могут быть данные любого из перечисленных выше типов, объекты, значения NULL и значения ошибок ERROR Зависит от контекста, но не менее 16 байтов ВыходВыход
  • 31. VBA не требует обязательного объявления переменных. В случае если переменная не была объявлена, ей автоматически присваивается тип Variant. Этот тип является универсальным и может содержать данные различных подтипов: Integer, Long, String и т. п. ВыходВыход
  • 32. Соглашения об именах констант и переменных: При написании программ на VBA принято придерживаться определенных правил. Например, при объявлении переменной типа Integer в начале имени ставится специальный префикс int. ВыходВыход
  • 33. Тип данных Префикс Тип данных Префикс Boolean Bin Long lng Byte Byt Object obj Currency Cur Single sng Date (Time) Dtm String str Double Dbl Variant Vnt ВыходВыход
  • 34. Для задания определяемых пользователем типов данных используется инструкция Type. Определяемые пользователем типы данных могут включать в себя один или несколько элементов любого типа данных. ВыходВыход
  • 35. Синтаксис инструкции Type: Type имя_переменной имя_элемента1 As тип [имя_элемента2 As тип] … End Type здесь имя_переменной – имя, которое требуется присвоить определяемому типу, а имя_элемента - имя элемента определяемого пользователем типа ВыходВыход
  • 36. Константы Константа – это значение в VBA, которое не меняется. Существует несколько типов констант: •Именованные; •Численные; •Константы Date; •Константы Boolean; •Типизированные константы; •Внутренние константы. ВыходВыход
  • 37. Именованные константы – константы, имеющие заданное имя; это имя имеет конкретное неизменяемое значение. В отличие от переменной, необходимо всегда явно объявлять именованные константы, используя ключевое слово Const. Следует помещать объявления констант на модульном уровне, чтобы у них была наибольшая область действия. ВыходВыход
  • 38. Литеральные константы – это константы, записываемые непосредственно в код. Правила написания литеральных констант (String, Integer, Data, Boolean): •строковые константы должны быть заключены в двойные кавычки (" "); •пустая строковая константа (нулевая строка) обозначается двумя двойными кавычками, между которыми ничего нет (""); •строковая константа должна вся находиться на одной и той же строке. Нельзя использовать символ продолжения строки для продолжения литеральной (строковой) константы на другой строке. ВыходВыход
  • 39. Численные константы могут содержать любой из численных типов VBA. Правила написания численных констант: •численные константы должны состоять только из числовых символов от 0 до 9; •численная константа может начинаться со знака минус и содержать десятичную точку; •можно использовать экспоненциальное представление для численных констант; •никакие другие символы или знаки в численных константах не допускаются. Примеры: – 142 – – 789.3 – 5.55Е4 ВыходВыход
  • 40. Константы Date необходимо помещать между знаками фунта (#). Независимо от того, в каком из форматов записывается литеральная константа Date, VBA переформатирует эту константу для соответствия одному из двух следующих форматов – в зависимости от того, содержит ли константа Date информацию о времени: •#2/5/02 9:17:00 PM# •#2/5/02# ВыходВыход
  • 41. Константы Boolean – существуют только две правильные константы типа Boolean: True и False. ВыходВыход
  • 42. Типизированные константы используются при явном задании типа константы. Объявление конкретного типа данных для константы может повысить точность вычислений. Для констант можно использовать типы данных Byte, Boolean, Integer, Long, Single, Double, Currency, Date, String. Синтаксис: Const имя_константы As type = value, name As type = value,… где type – имя любого из типов данных VBA; value – значение, присваиваемое константе. Пример: Const Pi As Double = 3.14 ВыходВыход
  • 43. Внутренние константы называются также предопределенными константами. Внутренняя константа – это именованная константа, которая была определена разработчиками VBA. Внутренние константы все начинаются с букв vb для указания того, что они определяются языком VBA. ВыходВыход