Введение в программирование на VBA - eDrive

Введение в программирование на VBA - eDrive Введение в программирование на VBA - eDrive

edrive.narod.ru
from edrive.narod.ru More from this publisher
06.01.2015 Views

20 инструментов, удаляющая строку. Чтобы добавить строку, указатель располагается в следующей строке и нажимается клавиша или соответствующая кнопка панели инструментов. Для вставки строк вместо существующих, они предварительно выделяются. Каждая макрокоманда реализует определенную операцию. Макрокоманда КомандаКлавиатуры имитирует нажатие клавиш: {Backspace}, {Bs}, {BkSp}; {CapsLock}; {Clear}; {Delete}, {Del}; {End}; {Enter}, {~}; {Escape}, {Esc}; {Help}; {Home}; {Insert};{Fn} (n = 1,.. 16); {Down}; {Left}; {PgDn}; {PgUp}; {Tab}; {Up}. Вместо вводится +, вместо печатают ^, а вместо ставят %. Чтобы послать клавиатурную комбинацию несколько раз, добавляется число ее повторений, например {^Down 3}. Для автоматического обновления данных с помощью макросов используют макрокоманды ОбновитьОбъект, Обновление или ПоказатьВсеЗаписи. Макрокоманда ЗадатьЗначение используется для инициализации элементов таблиц, управляющих объектов, свойств формы или отчета. Макрокоманда ЗапускЗапросаSQL запускает запрос на изменение с помощью соответствующего выражения SQL длиной до 256 символов. Кроме того, эта макрокоманда позволяет запустить управляющий запрос. Для запуска в макросе запроса на выборку или перекрестного запроса следует с помощью аргумента Режим макрокоманды ОткрытьЗапрос открыть существующий запрос на выборку или перекрестный запрос в режиме таблицы. Эта же макрокоманда позволяет выполнить сохраненные запросы на изменение и запросы SQL. Введение в программирование От алгоритма к программе Историю программирования традиционно ведут от языка Fortran (FORmula TRANslator), ставшего в 1957 г. первым языком программирования высокого уровня, не имевшим жесткой привязки к физическим адресам внутренних и периферийных устройств компьютера. А в 1963 г. профессорами Дармутского колледжа Д.Кемени и Р.Куртцем были разработаны первые 14 команд языка Basic. Basic (Beginner's All-purpose Symbolic Instruction Code) первоначально предназначался для обучения программированию. В конце 60-х — начале 70-х годов язык получил мощную поддержку фирм General Electric, HP и DEC, и позднее практически все мини- и микрокомпьютеры снабжались Basic-системами. Благодаря президенту Microsoft Б.Гейтсу, Basic стал первым языком программирования для персональных компьютеров. Язык приобрел огромную популярность во всем мире в силу своей простоты и ориентации на диалоговый режим. Разработан стандарт минимального подмножества

21 языка Basic, утвержденный в 1976 г. Сегодня наибольшее распространение получил Visual Basic, и в первую очередь — Visual Basic for Applications (VBA), обслуживающий все приложения Microsoft Office. Как и все языки высокого уровня, Basic строится в соответствии с концепцией процедурного программирования. Процедурный подход основан на алгоритмической декомпозиции решаемой проблемы и реализуется посредством решения очевидных формализуемых задач. Правило «разделяй и властвуй» ориентирует на представление проблемы набором самостоятельных блоков данных — процедур таким образом, чтобы, выполнив каждую из них, можно было прийти к решению всей проблемы. «Благодаря процедурам, лучше прослеживается структура больших и сложных программ; они обеспечивают логическую сегментацию всей задачи и облегчают отладку», утверждает автор «Искусства программирования» Д.Кнут. Обычно подобное разделение выполняется на этапе алгоритмизации — первом этапе «нисходящего проектирования» (top-down design). Алгоритмом в информатике принято называть систему правил, предписывающую конечную последовательность действий, шагов решения во времени. Слово «алгоритм» произошло от имени персидского математика Al Khowarizmi, автора трактата об основах десятичной арифметики, хотя концепция алгоритмизации родилась гораздо раньше, в 300 — 400 гг. до н.э. в трудах Евклида. Алгоритм характеризуется рядом свойств: • понятностью применительно к конкретному исполнителю — вычислительной системе, человеку — и доступностью средств реализации; • массовостью, то есть независимостью от входных данных, что позволяет использовать один и тот же алгоритм для решения разных однотипных задач; • конечным множеством входных данных, составляющих область определения алгоритма, и конечным выходным множеством, то есть областью значений; • конечностью решения, то есть способностью приводить к ответу после выполнения конечного числа шагов; • однозначностью, то есть приведением к одному и тому же результату при многократной подаче на вход его одних и тех же данных. Множество формируемых в ходе алгоритмизации задач составляется с учетом возможной последовательности их обработки. Иначе говоря, проблема должна быть хорошо продумана, прежде чем она сможет быть решена. Не закончив алгоритмизации, нет смысла начинать кодирование,

21<br />

языка Basic, ут<strong>в</strong>ержденный <strong>в</strong> 1976 г. Сегодня <strong>на</strong>ибольшее распространение<br />

получил Visual Basic, и <strong>в</strong> пер<strong>в</strong>ую очередь — Visual Basic for Applications<br />

(<strong>VBA</strong>), обслужи<strong>в</strong>ающий <strong>в</strong>се приложения Microsoft Office.<br />

Как и <strong>в</strong>се языки <strong>в</strong>ысокого уро<strong>в</strong>ня, Basic строится <strong>в</strong> соот<strong>в</strong>етст<strong>в</strong>ии с<br />

концепцией процедурного программиро<strong>в</strong>ания. Процедурный подход осно<strong>в</strong>ан<br />

<strong>на</strong> алгоритмической декомпозиции решаемой проблемы и реализуется<br />

посредст<strong>в</strong>ом решения оче<strong>в</strong>идных формализуемых задач. Пра<strong>в</strong>ило «разделяй<br />

и <strong>в</strong>ласт<strong>в</strong>уй» ориентирует <strong>на</strong> предста<strong>в</strong>ление проблемы <strong>на</strong>бором<br />

самостоятельных блоко<strong>в</strong> данных — процедур таким образом, чтобы,<br />

<strong>в</strong>ыполни<strong>в</strong> каждую из них, можно было прийти к решению <strong>в</strong>сей проблемы.<br />

«Благодаря процедурам, лучше прослежи<strong>в</strong>ается структура больших и<br />

сложных программ; они обеспечи<strong>в</strong>ают логическую сегментацию <strong>в</strong>сей задачи<br />

и облегчают отладку», ут<strong>в</strong>ерждает а<strong>в</strong>тор «Искусст<strong>в</strong>а программиро<strong>в</strong>ания»<br />

Д.Кнут.<br />

Обычно подобное разделение <strong>в</strong>ыполняется <strong>на</strong> этапе алгоритмизации —<br />

пер<strong>в</strong>ом этапе «нисходящего проектиро<strong>в</strong>ания» (top-down design). Алгоритмом<br />

<strong>в</strong> информатике принято <strong>на</strong>зы<strong>в</strong>ать систему пра<strong>в</strong>ил, предписы<strong>в</strong>ающую<br />

конечную последо<strong>в</strong>ательность дейст<strong>в</strong>ий, шаго<strong>в</strong> решения <strong>в</strong>о <strong>в</strong>ремени. Сло<strong>в</strong>о<br />

«алгоритм» произошло от имени персидского математика Al Khowarizmi,<br />

а<strong>в</strong>тора трактата об осно<strong>в</strong>ах десятичной арифметики, хотя концепция<br />

алгоритмизации родилась гораздо раньше, <strong>в</strong> 300 — 400 гг. до н.э. <strong>в</strong> трудах<br />

Е<strong>в</strong>клида.<br />

Алгоритм характеризуется рядом с<strong>в</strong>ойст<strong>в</strong>:<br />

• понятностью применительно к конкретному исполнителю —<br />

<strong>в</strong>ычислительной системе, чело<strong>в</strong>еку — и доступностью средст<strong>в</strong><br />

реализации;<br />

• массо<strong>в</strong>остью, то есть неза<strong>в</strong>исимостью от <strong>в</strong>ходных данных, что<br />

поз<strong>в</strong>оляет использо<strong>в</strong>ать один и тот же алгоритм для решения<br />

разных однотипных задач;<br />

• конечным множест<strong>в</strong>ом <strong>в</strong>ходных данных, соста<strong>в</strong>ляющих область<br />

определения алгоритма, и конечным <strong>в</strong>ыходным множест<strong>в</strong>ом, то<br />

есть областью з<strong>на</strong>чений;<br />

• конечностью решения, то есть способностью при<strong>в</strong>одить к от<strong>в</strong>ету<br />

после <strong>в</strong>ыполнения конечного числа шаго<strong>в</strong>;<br />

• одноз<strong>на</strong>чностью, то есть при<strong>в</strong>едением к одному и тому же<br />

результату при многократной подаче <strong>на</strong> <strong>в</strong>ход его одних и тех же<br />

данных.<br />

Множест<strong>в</strong>о формируемых <strong>в</strong> ходе алгоритмизации задач соста<strong>в</strong>ляется с<br />

учетом <strong>в</strong>озможной последо<strong>в</strong>ательности их обработки. И<strong>на</strong>че го<strong>в</strong>оря,<br />

проблема долж<strong>на</strong> быть хорошо продума<strong>на</strong>, прежде чем о<strong>на</strong> сможет быть<br />

реше<strong>на</strong>. Не закончи<strong>в</strong> алгоритмизации, нет смысла <strong>на</strong>чи<strong>на</strong>ть кодиро<strong>в</strong>ание,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!