Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Основы программирования в Microsoft Excel

Покупка
Артикул: 762623.01.99
Доступ онлайн
150 ₽
В корзину
Пособие составлено в соответствии с тематикой практических занятий и программой курса «Информатика» для студентов института экономики и менеджмента направлений подготовки 38.03.01 - Экономика и 38.03.02- Менеджмент. В данном пособии изучаются основные принципы программирования в языке Visual Basic for Application (YBA) для автоматизации проведения расчетов в табличном процессоре Microsoft Excel. Подробно изучаются основные алгоритмические конструкции, понятия константы, переменной и массива. Рассматриваются основные операторы и конструкции VBA. Предназначено для преподавателей, аспирантов, студентов и магистрантов дневной, очно-заочной и заочной формы обучения.
Основы программирования в Microsoft Excel : учебно-методическое пособие / сост. Б. С. Лещинский. - Томск : Издательский Дом Томского государственного университета, 2017. - 82 с. - Текст : электронный. - URL: https://znanium.com/catalog/product/1717071 (дата обращения: 20.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ 
НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ 
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ 
ИНСТИТУТ ЭКОНОМИКИ И МЕНЕДЖМЕНТА 
 
 
 
 
 
 
 
 
 
 
 
ОСНОВЫ ПРОГРАММИРОВАНИЯ 
в Microsoft Excel 
 
 
Учебно-методическое пособие 
по курсу «Информатика» 
для студентов института экономики и менеджмента 
направлений подготовки 
38.03.01 – Экономика и 38.03.02 – Менеджмент 
 
 
 
 
 
 
 
 
 
 
 
 
Томск 
2017 

РАССМОТРЕНО И УТВЕРЖДЕНО методической комиссией института 
экономики и менеджмента. 
Протокол № 5 от 17 февраля 2017 г. 
Председатель МК ИЭМ В.В. Маковеева 
 
 
Пособие составлено в соответствии с тематикой практических занятий и программой курса «Информатика» для студентов института экономики и менеджмента направлений подготовки 38.03.01 – Экономика и 
38.03.02 – Менеджмент. 
В данном пособии изучаются основные принципы программирования 
в языке Visual Basic for Application (VBA) для автоматизации проведения 
расчетов в табличном процессоре Microsoft Excel. Подробно изучаются 
основные алгоритмические конструкции, понятия константы, переменной и массива. Рассматриваются основные операторы и конструкции 
VBA. 
Предназначено для преподавателей, аспирантов, студентов и магистрантов дневной, очно-заочной и заочной формы обучения. 
 
 
 
СОСТАВИТЕЛЬ: Лещинский Борис Семенович, к.т.н., доцент кафедры 
информационных технологий и бизнес-аналитики ИЭМ НИ ТГУ. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
© Томский государственный университет, 2017 

ПРЕДИСЛОВИЕ 

 
Функционирование компьютера, любых его компонент осуществляется только по определенным алгоритмам. Алгоритм – это точно определенный способ решения задачи в виде конечной (по времени) последовательности действий (операций). Для описания алгоритмов используют 
различные способы (графические, текстовые, формульные). 
В силу технических особенностей компьютера алгоритм для него 
должен быть представлен вполне определенным образом – в виде программы, которая представляет собой последовательность команд для 
процессора. Каждая команда – это описание какой-либо инструкции, которую должен исполнить процессор. Эти команды, должны быть выражены в машинном коде, т.е. на языке, понятном процессору. Программист, конечно, может, затрачивая значительные усилия, понимать и составлять программы на машинном языке, но это очень сложно. Поэтому 
для их создания принят следующий подход: программист пишет текст 
алгоритма на языке, который ему понятен и удобен, а затем с помощью 
специальных программ (систем программирования) переводит его на 
машинный язык и превращает в удобный для процессора вид. Разговорный язык для этой цели не подходит в связи с нечеткостью и многозначностью, поэтому разрабатывают специальные языки, которые называют 
алгоритмическими или языками программирования. 
Итак, языки программирования – это языки описания алгоритмов, 
которые нужны человеку, а не компьютеру. Они необходимы для облегчения создания программ, которые, в конечном итоге, должны быть 
представлены на одном и том же языке – языке команд для процессора. 
Поскольку человек имеет дело с текстом, написанном на языке программирования, то этот текст также называют программой. В настоящее время существует много алгоритмических языков, ориентированных на описание различных особенностей решаемых задач.  
В целом, процесс разработки программы включает в себя три этапа: 
– представление алгоритма в виде, удобном для уяснения логики решения задачи, для чего используют графические, текстовые, формульные 
средства; 
– описание алгоритма средствами определенного алгоритмического 
языка; 

– преобразование текста в готовую программу, которая будет исполняться процессором. 
Первый этап выполняется вручную, а для других двух этапов используют специальные программные средства, которые называются системами программирования. 
Основу Visual Basic for Application (VBA) составляет язык программирования BASIC, разработанный в начале 1960-х годов. Название 
BASIC образовано из начальных букв английской фразы Beginner’s Allpurpose Symbolic Instraction Code (универсальный язык символических 
инструкций для начинающих). Это один из наиболее простых языков 
программирования, предназначенный для решения вычислительных задач. Несмотря на свою простоту, он позволяет решать довольно большой 
круг задач. На его примере можно достаточно быстро понять особенности и других языков программирования. 
В настоящее время существует много разных вариантов, сохраняющих ядро BASIC и включающих различные дополнительные возможности. Одним из наиболее развитых расширений этого языка является Visual Basic for Application, который появился в 1991 году как средство автоматизации расчетов в Microsoft Excel. 
 

1 ОСНОВЫ АЛГОРИТМИЗАЦИИ 
 
1.1 Основные понятия 
 
Задача, как правило, формулируется на обычном языке с применением различных конструкций, принятых в той области знаний, к которой 
относится данная задача. Например, мы можем использовать запись суммы n чисел в виде 




n

i
ir
S
1
 

или написать 0 < x < 10. 
Эти конструкции есть в алгебраическом языке и используются для 
краткости записи. Если мы знаем этот язык, то понимаем, что первая 
конструкция означает «для вычисления S следует сложить n чисел r1, r2, 
…, rn», а вторая конструкция – это краткая запись двух условий 0 < x и x 
< 10, которые должны выполняться одновременно. 
Однако в языке программирования таких языковых конструкций может и не быть. Любая программа представляет собой описание последовательности элементарных действий (операций), которые надо выполнить, чтобы решить задачу. Поэтому, чтобы изложить эту последовательность на языке программирования, необходимо сначала ясно понимать, 
как представить языковые конструкции обычного языка в виде таких 
элементарных операций. В связи с этим, прежде чем писать текст программы, следует написать алгоритм. 
Алгоритм – это конечный набор правил, позволяющий решать любую 
конкретную задачу из некоторого класса однотипных, при условии, что 
исходные данные для решения могут изменяться в заданных пределах. В 
алгоритме подробно описывается последовательность действий, необходимая для решения задачи. Составление такого пошагового описания 
процесса решения задачи называется алгоритмизацией. Существуют 
различные способы описания алгоритма, основными из которых являются словесно-формульный (пошаговый) и структурный (в виде блоксхемы). Словесно-формульным называется способ записи алгоритма на 
естественном языке, алгоритмическом (языке программирования) или 
псевдоязыке (сочетание элементов естественного и алгоритмического 
языка). Структурный способ – это компактная и наглядная форма записи в виде специальных графических знаков с указанием направленных 

связей между ними. Полученное таким способом описание называют 
блок-схемой (или структурной схемой). 
Блок-схема (структурная схема) – это удобное для человека графическое изображение алгоритма в виде плоских геометрических фигур (их 
называют блоками или вершинами), соединенных направленными линиями (их называют дугами). Внутри каждого блока (вершины) записывается действие, которое следует выполнить, или условие, которое необходимо проверить. Направление дуг показывает последовательность выполнения действий. 
В блок-схеме присутствуют вершины разного типа, основными из которых являются: 
– вершины начала и окончания (изображаются овалами). У вершины-начала нет входящих дуг, у нее есть лишь одна исходящая, направленная к вершине, с которой начинается алгоритм (рис. 1). 
 

 
Рис. 1. Вершины начала и окончания алгоритма. 
 
У вершины-окончания нет исходящих дуг и может быть несколько входящих; 
– вершины-действия (изображаются прямоугольниками) соответствуют шагам, в которых выполняются действия по изменению значений, 
форм представления или расположения данных (рис 2). 
 

 
Рис. 2. Вершина, изображающая действие. 
 
Каждая такая вершина может иметь несколько входящих дуг и только 
одну исходящую; 
– вершины-условия (изображаются ромбами) соответствуют шагам, в 
которых проверяются условия. Такая вершина может иметь несколько 
входящих дуг и не менее двух исходящих, каждая из которых соответствует одному из результатов проверяемого условия и отмечается соответствующей меткой (рис. 3). 

начало

окончание

действие 

Рис. 3. Вершина, изображающая проверку условия. 
 
Если условием является выражение, предполагающее альтернативный 
выбор (логическое выражение), то одна из исходящих дуг соответствует 
отношению следования при условии, что проверяемое логическое выражение истинно. Такая дуга отмечается меткой «да». Другая исходящая 
дуга соответствует отношению следования при условии, что проверяемое 
логическое выражение ложно, и отмечается меткой «нет» (рис.4); 
 

 
Рис. 4. Вершина альтернативного выбора. 
 
– вершины-узлы, указывающие на объединение (слияние) нескольких 
входящих дуг. Они обозначаются точками или кругами небольшого размера (рис. 5). 

 
Рис. 5. Объединение нескольких дуг. 
 
Иногда вершины-действия делят на операционные (вычислительные) и вершины ввода/вывода. Тогда первые изображают прямоугольниками, а последние – параллелограммами (рис. 6). 
 

 
Рис. 6. Вершина ввода или вывода. 
 

3..5 

 6

1 
2 

иначе 

i ?

да

нет 
i > n ?

ввод/вывод

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

y = 
c
a
ac
b


2
 

можно представить линейной структурой, изображенной на рис.7. 
 

 
 
Рис.7. Линейная алгоритмическая структура. 
 
Обратите внимание на действия, указанные в блоках. Здесь использована очень важная операция присваивания. Запись 
переменная = выражение 
означает, что необходимо провести вычисления, указанные справа от 
знака равенства, и полученное значение присвоить переменной, стоящей 
слева от этого знака. Здесь знак = означает не проверку условия, а выполнение действия “обозначить именем значение” (“поместить значение 
в переменную”). Это действие называется присваиванием значения переменной. Например, операция увеличения i на 1 записывается i = i + 1 (читается “переменной i присвоить значение i + 1”). 
 
Ветвящаяся структура представляет процесс, для реализации которого предусмотрено несколько направлений (ветвей). Каждое отдельное 
направление является отдельной ветвью. Направление ветвления выбирается логической проверкой. Например, вычисление 

q = 





0
0
x
b
a
x
b
a
 
если
 ,
 
если
 ,
 

можем представить ветвящейся структурой, изображенной на рис.8 

p = b2 – ac 
y = p / q 
q = a + c 

Рис. 8. Альтернативный ветвящийся процесс. 
 
Ветвящийся процесс, включающий в себя две ветви, называется простым (или альтернативным). Если процесс предполагает более двух 
ветвей, то он называется сложным. Он реализует множественный выбор направлений алгоритма. Например, структура, изображенная на рис. 
9, 

 
Рис. 9. Сложный ветвящийся процесс. 
 
включает четыре ветви. Передвижение по ним осуществляется в зависимости от значения переменной i: если i = 1, производится переход к блоку 
A, при i = 2 – к блоку B, при значениях i от 3 до 6 – к блоку С, при других 
значениях – выход из процесса. 
Заметим, что сложный ветвящийся процесс можно представить с помощью простых. 
 
Циклической называется структура, описывающая процесс, содержащий цикл. Цикл – это последовательность многократно повторяющейся группы действий. 
В описании цикла можно выделить следующие этапы: 
– подготовка (инициализация) цикла включает действия по подготовке значений параметров, участвующих в действиях цикла; 
– выполнение (тело цикла) включает действия, составляющие цикл; 
– модификация параметров включает действия, изменяющие значения тех параметров, от которых зависит условие окончания цикла; 

нет 

да 

x  0 ?

q = a – b 

q = a + b

A 

1
2

3..6

иначе

i ? 
B 

C 

– проверка условия окончания цикла. 
Цикл называется детерминированным, если число повторений тела 
цикла заранее (до начала цикла) известно или определено. Цикл называется итерационным, если число повторений тела цикла заранее не известно, а зависит от переменных, участвующих в вычислениях. 
Проверка условия окончания может производиться как в конце цикла, 
так и в начале. В зависимости от его расположения различают цикл с 
нижним окончанием или с постусловием (условие проверяется после 
тела цикла) и цикл с верхним окончанием или с предусловием (условие 
проверяется перед телом цикла). Принципиальное отличие заключается в 
том, что в первом случае тело цикла обязательно выполняется по крайней 
мере один раз, а во втором – может не выполниться ни разу. 
 
Для того, чтобы понять смысл циклического процесса, рассмотрим 
следующий пример. Пусть необходимо написать алгоритм вычисления 
суммы чисел, причем как количество чисел, так и сами числа заранее неизвестны и вводятся пользователем. Обозначим результат суммирования 
S, количество чисел – n, а каждое из них – ri (i = 1, ..., n), тогда 




n

i
ir
S
1
. 

Если бы числа r1, r2, ..., rn и их количество n были известны заранее, то 
для вычисления S достаточно было записать арифметическое выражение 
S = r1 + r2 +...+ rn. В данном случае нам эти числа и их количество заранее 
неизвестны, поэтому поступим следующим образом. Сначала следует 
узнать у пользователя количество чисел и поместить в переменную n. 
После этого в S поместим нуль и n раз повторим одну и ту же последовательность действий: “ввести очередное число”, “прибавить число к значению S”, “поместить результат сложения в переменную S”. В результате 
этих действий в S будет накоплена сумма всех введенных пользователем 
чисел. Группа указанных действий составляет цикл, который должен выполниться n раз. 
 
Соответствующий алгоритм можно представить в виде блок-схемы, 
изображенной на рис.10. 

Доступ онлайн
150 ₽
В корзину