Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теоретические и практические вопросы дисциплины «Информатика». Учебное пособие
.pdf
71
в программе нет ошибок. Интерпретатор проверят на наличие ошибок
каждую строку и, если она правильно записана, ее выполняет.
Поскольку строки в программе выполняются многократно, то скорость
выполнения программы в последнем случае резко снижается.
Откомпилированные программы работают в 20-50 раз быстрее, чем
программы, под управлением интерпретатора.
Файлы откомпилированных программ имеют расширение exe
или com.
Алгоритмический язык высокого уровня ВАSIC (Beginners AllPurpose Symbolic Code) – один из самых современных языков
программирования.
Выделяют 4 поколения бейсика:
GWBasic (50 Kбайт) – первое поколение (не развивается).
Это одна из лучших реализаций языка для первых персональных
компьютеров. Позволял работать с графикой, текстом, звуком,
внешними устройствами ЭВМ. Морально устарел. Не имел
современной среды разработки, не поддерживал модульного
программирования и т.д.
QuckBasic (5 Mбайт) – второе поколение (не развивается).
Создание этого поколения алгоритмического языка в 1985 г.
произвело настоящую революцию в программировании. В этой версии
реализованы идеи структурного и модульного программирования.
Последняя версия QuckBasic была создана в 1988 году. Один из
основных недостатков - неприспособленность работы в системе
Windows.
Достоинством QuickBASIC является то, что на этапе отладки он
работает как интерпретатор, а затем отлаженную программу можно
откомпилировать, т.е. получить exe-файл, который можно запускать на
любом компьютере, даже не имеющем систему программирования
QuickBASIC.
Бесплатная версия этой программы поставляется фирмой в виде
программы QBasic. QBasic отличается от QuickBASIC тем, что
поставляется вместе с «железом» персонального компьютера и имеет
меньшие возможности, но для учебных целей вполне пригоден.
Visual Basic (150-200 Мбайт) – третье поколение (не
развивается).
Первая версия Visual Basic появилась в 1991 г. и позволяла
создавать полноценные приложения для Windows. Особенность

72
программы в том, что с помощью нее можно легко и просто создавать
диалоговый интерфейс. Создано 6 версий программы.
Basic.Net (650 Мбайт) – четвертое поколение бейсика (2002).
Это современный алгоритмический язык.
Все версии бейсика созданы фирмой Microsoft. Бывший
президент фирмы Билл Гейтс уверен, что бейсик переживет все другие
языки программирования.
Язык программирования Visual Basic for Applications (VBA),
созданный в начале 1997 г. фирмой Microsoft, − это программное
средство, предназначенное для управления приложениями Windows.
3.2 Основные понятия Visual Basic for Applications
Программа на VBA состоит из кода. Код программы хранится в
модуле. Модули могут быть созданы пользователем или
автоматически самим Excel. Модули, хранящиеся в одной книге,
обычно называются проектом (Proekt).
Модули могут также содержать один или несколько макросов.
Макрос (от англ. macros) — программный объект, записанный
пользователем. Часто макросы применяют для выполнения рутинных
действий. Запись макроса в Excel состоит из нескольких этапов:
Создания начальных условий, например, открытие книги Excel,
выбор листа, активация ячейки.
Включение записи макроса: Сервис=>Макрос=>Начать запись. В
появившемся окне Запись макроса можно задать имя макроса и
место его хранения.
Выполнения каких-либо действий, которые нужно записать в
макрос, например, ввода в ячейку текста, изменение размера и
цвета шрифта, и т.д.
Остановки записи макроса: Сервис=>Макрос=> Остановить
запись.
Для просмотра текста макроса необходимо запустить редактор
Visul Basic, например, с помощью команд: Сервис =>Макрос
=>Редактор Visual Basic или клавишами Alt+F11.
Окно редактора может содержать три дочерних окна:
окно Project (Проект). Для вывода окна Project используйте меню
VBA (View=>Proeject Explorer). Окно Project предназначено для
просмотра модулей и других объектов в проекте.

73
окно Properties (Свойства): View=>Properties Windows. В окне
Sub Макрос 1 ()
1
´
2
´ Макрос 1 Макрос
3
´ Макрос записан 24.11.14
4
´
5
6 ´
7
End Sub
8
Properties записываются свойства выбранного объекта.
окно Code (Программа): View=>Code. В окне можно просмотреть
текст макроса.
Текст записанного макроса можно просмотреть также через
меню Excel: Сервис=>Макросы=>Войти.
Задание 8. Создать пустой макрос и посмотреть его структуру.
Для создания пустого макроса, т.е. макроса, который не
содержит кода программы, воспользуйтесь вышеприведенным
алгоритмом записи макроса, но никаких действий в листе Excel не
выполняйте, т.е. включите запись макроса и остановите запись. Затем
просмотрите текст макроса. Код пустого макроса обычно выглядит
следующим образом:
Первая и восьмая строка кода это начало и конец созданной
подпрограммы (процедуры) пустого макроса.
Вторая пустая строка со знаком ´ (оператор Rem), по-видимому,
отделяет первую строку от остальных строк.
В третьей строке, тоже начинающейся с оператора Rem,
записано имя макроса.
В четвертой строке записана дата создания макроса.
Пятая пустая строка отделяет вышеприведенные строки от
последующего кода процедуры.
Шестая строка процедуры позволяет пользователю записать код
макроса, т.е. программу созданную пользователем.
Седьмая строка содержит оператор Rem и отделяет текст кода от
последней восьмой строки макроса.
Все строки, начинающиеся с оператора Rem являются
информационными и никакого влияния на работу программы не
оказывают.

74
Более удобным приемом для создания процедур типа Sub
является использование редактора Visual Basic (VB-редактор). Для
вызова редактора проще всего использовать сочетание клавиш Alt
+F11 и на экране монитора появляется окно, редактора, имеющее вид
(рис. 3).
Рис. 3. Окно редактора VBA
Для создания программ, написанных на VBA, сначала создается
модуль c помощью меню: Insert=>Module, в котором будут храниться
созданные программы. Затем создается процедура типа Sub, с
использованием меню Insert=>Procedure. В появившемся окне Add
Procedure в поле Name необходимо ввести имя процедуры, например
Proba1, и нажать на кнопку OK.
В результате будет создана процедура типа Sub, имеющая всего
три строчки:
Public Sub Proba1()
End Sub
Между первой и последней строчками процедуры можно
вводить код программы.
Для написания кода программы на VBA необходимо
познакомиться с основными элементами и понятиями языка VBA.

75
3.3 Основные элементы языка Visual Basic for Applications
А л ф а ви т VBA:
- п р о п и с н ы е (заглавные A-Z) или равноценные им с т р о ч н ы е
(маленькие a-z) буквы латинского алфавита:
A , B , C , D , E, F, G , H , I , J , K , L , M , N , O , P , Q, R ,
S , T , U , V , W , X , Y , Z ;
- а р а б с к и е ц иф р ы : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;
- з н а к и м а т е м а т и ч е с к и х о п е р а ц и й :
+ - сложение (символ конкатенации-сцепления);
- - вычитание;
* - умножение;
/ - деление (знак «слеш»);
^ - возведение в степень;
- з н а к и о т н о ш е н и я :
= - знак равенства или символ присваивания;
> - знак больше;
< - знак меньше.
- в с п о м о г а т е л ь н ы е з н а к и :
( - левая круглая скобка;
) - правая круглая скобка;
, - запятая;
˝ - двойные кавычки (разделитель символьных
значений);
. - точка (отделяет целую часть от дробной в
десятичной дроби);
' - апостроф (символ комментария). Заменяет оператор
Rem;
- точка с запятой;
: - двоеточие (разделитель операторов в строке);
_ - нижний знак подчеркивания − символ продолжения
строки;
- пробел (условное обозначение ⊔).
Программа на VBA состоит из строк (которые не видны).
Строки обычно не нумеруются. В строке можно записать несколько
операторов. Стандартный экран монитора позволяет отобразить не

76
менее 50 строк программы и не менее 80 символов в строке. Поэтому
удобней записывать в одну строку столько операторов, чтобы они
были видны программисту сразу все. Для успешного
программирование на VBA необходимо хорошо знать операторы
языка (формат оператора, его назначение, особенности работы и т.д.).
К о н с т а н та − это величина, значение которой не изменяется
в процессе вычислений. Константы могут быть числовыми и
строковыми (символьными). Числовые константы могут быть как
положительными, так и отрицательными числами. Знак + перед
положительным числом необязателен.
Числовые константы могут быть записаны в следующих формах:
- в ц е л о й (число не содержит десятичную точку, которая отделяет
целую часть от дробной), например 32; -1124 . Целые константы
имеют точное представление в компьютере и позволяют получить
абсолютно точный результат;
- с ф и к с и р о в а н н о й т о ч к о й (число содержит десятичную
точку, которая отделяет целую часть от дробной). Эта форма
используется для записи вещественных (действительных или
дробных) чисел, например, 0.4137; -192.41; 225.0. Ноль целых можно
опускать, например вышеприведенное первое число можно записать
так: .4137;
- с п л а в а ю щ е й т о ч к о й (экспоненциальная или показательная
форма). Эта форма используется для записи очень больших или
очень маленьких вещественных (действительных или дробных)
чисел. В экспоненциальной форме число имеет вид: ±mE±p или
±mD±p, где m – мантисса – число, которое может содержать
десятичную точку; p – порядок - целое число; Е или D соответствуют
числу 10, например, число Авогадро 602280000000000000000000
записывается так: 6.0228Е23 или 6.0228D23, а заряд электрона
0,000000000000000000160206 можно записать как 1.60206Е-19 или
1.60206D-19.
Вещественные константы имеют в компьютере приближенное
представление, и результат вычислений с ними содержит
погрешность (ошибку).
С т р ок о в а я или с и м в о л ь н а я к о н с т а н т а − это,
заключенная в кавычки последовательность символов. Внутри
строковой константы нельзя использовать кавычки.
Пример символьной константы: "Значение температуры".

77
Константы могут быть н е п о и м е н о в а н н ы м и , т.е.
использоваться без присвоения им имени, например число 3,14, и
п о и ме н о в а н н ы м и , например константе π можно присвоить имя
PI.
Поименованная константа
Формат объявления поименованной константы:
Const имя_константы = значение
Имя_константы создается по тем же правилам, что и имя
переменной; значение – значение константы, которое может быть
числом или символьной константой.
Поименованная константа имеет имя, и, самое главное, значение
поименованной константы не может быть изменено в программе.
Примеры поименованных констант:
Сonst Stoimost =200
Сonst Hello= "Здравствуйте"
Сonst Pi =3.14
П е р е м е н на я − это объект (в простейшем случае − ячейка
памяти) или группа объектов (массив) определенного типа. Объект
создается путем присвоения ему имени.
Переменная предназначена для временного хранения числовых
и текстовых данных.
Переменные могут быть:
- п р о с т ы м и ;
- п е р е м е н н ы м и м а с с и в а .
Простая переменная может обозначаться набором латинских
букв и цифр, не имеющим пробела, начинающимся с буквы и
имеющим длину до 255 символов, например: х ; х5 ; FLAGl_kat1.
Переменная массива состоит из имени массива (имя массива
обозначается так же, как и имя простой переменной) и значения
одного или нескольких индексов, записанных в круглые скобки,
например V(10) – десятый элемент одномерного массива V; R(1,5) −
элемент двумерного массива R, находящийся на пересечении первой
строки и пятого столбца.
Следует учитывать, что имя переменной не должно совпадать с
зарезервированным словом VBA, например недопустимы имена
переменных: Rem, For, однако можно использовать Arem, Efor.
Переменные, как и константы, могут быть числовыми и
строковыми (символьными). При запуске программы на выполнение

78
начальные значения всех числовых переменных устанавливаются
равными нулю, а строковых – пустой строке.
3.4 Линейные вычислительные процессы
Л и н е й н а я п р о г р а м м а − это такая программа, в которой
операторы выполняются последовательно один за другим в том
порядке, в каком они записаны в программе.
3.4.1 Операторы и инструкции для разработки линейных
вычислительных процессов
Прежде чем составлять программу на VBA, необходимо очень
хорошо представлять структуру оператора или, как принято говорить,
знать ф о р м а т о п е р а т о р а ( с и н т а к с и с о п е р а т о р а ) . При
описании формата обычно соблюдаются следующие п р а в и л а :
- ключевые слова VBA пишутся так, как это указано в формате;
- после ключевого слова обязательно ставится пробел, для того чтобы
отделить его от другого ключевого слова или параметра;
- квадратные скобки в формате показывают, что информация,
находящаяся внутри них, может быть не указана пользователем,
например, запись: [Let] означает, что ключевое слово Let можно не
набирать на клавиатуре;
- фигурные скобки {} указывают, на какой либо выбор, например
запись {, / ;} показывает, что пользователь может выбрать запятую,
либо точку с запятой;
- многоточие типа: … … … означает повтор вышеприведенной
конструкции оператора;
- набранный курсивом текст показывает, что задаваемый параметр,
должен быть определен (задан) самим пользователем в зависимости
от решаемой задачи. Иногда параметр состоит из нескольких слов,
которые специально соединены знаком подчеркивания. Соединение
нескольких слов означает, что отдельные слова, поясняющие смысл
параметра, образуют один параметр или объект, например, список_
переменных или имя_переменной;
- форматы, операторов, которые будут описаны ниже, приведены в
у п р о щ ен н о м виде, что сделано исключительно в учебных целях.
Полное описание формата оператора в системе VBA легко получить,
если воспользоваться помощью (кл. F1).

79
Оператор Let
(Let − пусть)
Формат оператора:
[Let] переменная = {выражение/текстовая_константа}
переменная − любая числовая простая переменная или переменная
массива, которой присваивается значение выражения или текстовой
константы; выражение − любое числовое выражение, значение
которого будет присвоено переменной. Под выражением мы будем
понимать совокупность, функций, переменных, числовых констант,
соединенных знаками арифметических действий; текстовая_
константа – последовательность символов, заключенная в кавычки.
Назначение оператора: вычисление выражения и присвоение
переменной значения выражения или значения текстовой константы.
Работа оператора: при выполнении оператора Let компьютер
сначала выполняет правую часть оператора, т.е. вычисляет выражение.
Полученное число присваивается переменной. Физически это
означает, что число записывается в одну из ячеек памяти компьютера.
Такая ячейка имеет имя переменная. Не следует забывать, что число в
ячейке хранится в двоичном коде.
Рассмотрим ряд примеров записи оператора:
Let x=8
-переменной x присваивается значение 8;
Let xx=8+12
-сначала вычисляется выражение, т.е. число 8 складывается с числом
12, получается число 20. Затем полученный результат выражения
записывается в двоичном коде в ячейку с именем xx.
Приведем пример записи текстовой константы:
Let Info_1= "Введите число аппаратов"
-переменная Info_1 содержит текстовую константу.
Особенности записи оператора Let: как видно из описания
формата ключевое слово Let можно не писать, например,
xx=8+12
Такая запись предпочтительней, т.к. на набор ключевого слова
оператора затрачивается время.

80
Организация вывода данных в активную ячейку и с помощью
инструкции MsgBox
Формат инструкции MsgBox:
MsgBox {/ "сообщение"/ переменная} [, ,"Текст заголовка окна"]
переменная – переменная, значение которой выводится в окно
Windows, или сообщение (текстовая константа) которое выводится в
окно Windows; Текст заголовка окна – сообщение, которое выводится
в качестве заголовка окна Windows. Перед текстом заголовка окна
необходимо поставить две запятые.
Назначение инструкции MsgBox − вывод значения переменной
или сообщения в окно Windows, которое в свою очередь выводится в
активный лист Excel. При наличии текста заголовка окна он выводится
в заголовке окна. При отсутствии текста заголовка окна в заголовке
окна выводится Microsoft Excel.
Например, код программы:
а=5
MsgBox a , ,"Вывод результата"
обеспечивает вывод в активный лист Excel окна Windows,
содержащего следующую информацию:
Окно Windows позволяет не только прочитать выведенную
информацию, но и приостановить выполнение программы до тех пор,
пока не будет нажата клавиша OK.
Вывод данных также можно осуществить в активную ячейку
Excel (в которой находится курсор) с помощью инструкции:
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
