Реферат: Описание VBA

ВВЕДЕНИЕ

Microsoft Excel имеет встроенный язык программирования — Visual Basicfor Аpplications (VBA). Этот язык позволяет создавать приложения, выполняемые всреде Microsoft Office. Это могут быть разнообразные аналитические программы,финансовые системы, программы учета кадров, системы автоматического созданияофициальных писем/документов с помощью библиотеки готовых шаблонов и т.п. Приэтом интерфейс создаваемой программы может быть совершенно непохожим на интерфейстого приложения, в котором она написана.

      VBA сочетает в себе практическинеограниченные возможности с простотой изучения и использования. Теперьбольшинство функций можно описать, не прибегая к программированию. В томслучае, если возможностей языка недостаточно, можно обратиться к API-функциямWindows. Пожалуй, самое главное достоинство VBA в том, что этот язык являетсяединым для всех офисных приложений Microsoft и поэтому позволяет связывать ихмежду собой. Уже сейчас из программы, написанной в Excel, можно обращаться кобъектам Word для Windows, а также Microsoft Project. Это открывает заманчивыеперспективы. Представьте, что пользователь на конкретном рабочем месте долженна основе некоторых данных, извлекаемых из базы, делать их анализ, строитьдиаграммы и проектировать деятельность организации, а также автоматическивыполнять рассылку этих обработанных данных по некоторым адресам вместе ссопроводительным письмом. Все это можно сделать средствами офисных продуктовMicrosoft, однако при этом пользователь должен в совершенстве овладеть каждымиз них. В случае если программа для решения этой задачи написана на VBA,пользователю придется изучить только ее.

    Программа MS Excel, являясь лидером  на  рынке  программ обработки электронных таблиц,  определяеттенденции развития в этой  области.  Вплоть   до   версии   4.0   программа  Excel представляла   собой   фактический  стандарт  с  точки  зренияфункциональных возможностей и удобства работы.

Одним  из важнейших функциональныхрасширений программы, предназначенным для  профессионалов,  являетсявстроенная   в   Excel   Среда  программирования  Visual  Basic  (VBA)  длярешения прикладных задач.  Благодаря  VBA  фирме  Microsoft  удалось  не  только      расширить возможности языка макрокоманд Excel 4.0, но и ввестиновый  уровень  прикладного  программирования,  поскольку  VBA позволяетсоздавать полноценные прикладные пакеты,  которые по своим функциям выходятдалеко за рамки  обработки  электронных таблиц.

Краткое описание VBA

VisualBasic for Applications пред­ставляет собой новаторское дости­жение в языкахпрограммирова­ния, возможно наиболее значи­тельное с тех пор, как состоялсявыпуск первой интегрированной среды разработки. Это означает, не то что VBA —лучшее средство разработки, а лишь то, что VBA существует.Visual Basic, вероятно, самое популярное средство разра­ботки, и теперь совершенно не­ожиданноэтот язык включен в не менее популярный комплект при­кладных программ.

Посколькуосновой приложе­ний Microsoft послужил один и тот же языкпрограммирования, веро­ятно, многим придет в голову мысльвоспользоваться им. Точно так же, как пользователям Win­dows для подготовкимножества программ  необходимо  освоить один интерфейс, в VBA достаточ­ноизучить одну среду программи­рования, чтобы составлять разно­образныеприложения. Около 40 компаний — производителей про­граммного обеспечениязаключили с корпорацией Microsoft соглаше­ние овключении VBA в их про­дукты. Первой из этих компаний на рынок вышла фирма Visio Corp., котораяинтегрировала VBA в пакеты Visio Professional и Visio Technical, версия 4.5.Можно ожидать от таких фирм агрессивной рыночнойполитики в отношении VBA, поскольку с этим языком их продукты оказались взаметном выигрыше. Настоящее имя VBA — Visual Basic ApplicationEdition, и он на самом деле относится к семейству VB, следовательно,вы­зывает повышенный интерес как самостоятельное  инструменталь­ное средство.

 Встраивание VBAв какое-то приложение означает для него со­здание объектной модели, в ре­зультатеVBA-программа может обращаться к объектам этого приложения иманипулировать ими. Для изделий фирмы Visio к числу таких объектов могутотноситься как прямоугольник на рисунке, так и сам рисунок, а объектная модельраспространяется на все эти элементы.

А приложение собъектной мо­делью и VBA — это уже часть ар­сенала разработчика. Предполо­жим, например,что вы хотите со­ставить программу, с помощью ко­торой можно было быподготовить схему расстановки мебели и обо­рудования на кухне, а затем рас­печататьсписок предметов и цен. Для этой программы нужна база данных синформацией о предме­тах кухонной обстановки и какой-либо способ визуализацииизобра­жения кухни.

Точно так же,как можно составить макроко­манду Office, которая обращается к программамWord и Excel, мож­но разработать VBA-программу,сочетающую в себе средства Access и Visio. Составное приложениедля планировки кухни можно считать неким гибридом Access с механиз­момчерчения или Visio с базой данных.

VBA — собственноеподмно­жество VB5, но на самом деле в VBA есть почтивсе, что можно найти в VB5. Надо признать, что незначительные отличия все жеимеются (например, запуск из Word, а не в автономном режиме), но влюбом случае программиро­вание осуществляется одинаково. Объектные моделиOffice 97 име­ют силу до тех пор, пока вы­полняются приложения, которым онипринадлежат, поэтому и VBA, и VB5 могут манипулировать ими. Vs Мы видим, чтоот аналогичной в VB5 интегрированная среда разработ­ки в VBA почти ничем неотли­чается.


ПРИМЕР ВЗАИМОДЕЙСТВИЯ EXCEL И VISUAL BASIC

Начиная с   версии  5.0   в   программу   Excel  включен специальный язык программирования, который  получил  название Visual Basic for Applications (VBA).

Введение достаточно мощного  языка  программирования   в Excel  делает эту программную платформувесьма привлекательной для    профессионалов,    которые    занимаются   разработкой специализированных прикладных систем.

Разработка языкапрограммирования  VBA,  встраиваемого  в прикладные   системы,   является  одним   из   стратегических направлений компании Microsoft.  Этот язык ужеинтегрирован  в такие  программы,  как  Word  for  Windows,  Power Point и ряддругих.  VBA позволяет  создавать  программные  модули,  меню,      диалоговые  окна  и другие ресурсы в среде Windows.  Благодаря этому языкупоявляется возможность значительно расширить набор функций в Excel,  а такжесоздавать функции,  значения которых зависят от некоторых условий  и  событий. В  принципе,  можно полностью  перепрограммировать  все  функции  программыExcel, если в этом появилась необходимость.

Программированиетабличных функций.

Чтобы создать отдельный рабочий  лист  для  программного модуля,    щелкните    по   пиктограмме   Insert  Module   из пиктографического меню  Visual  Basic  (1-я  пиктограмма) или вызовите директиву Module из меню Insert Macro.           После этого появится  новый  рабочий  лист  «Modele1».  В программноммодуле нужно описать функцию на языке VBA.  В окне программного модуля можно работать,  как  в  окне  небольшого текстового редактора,  но при этомнеобходимо помнить,  что Вы пишите текст программы.  Описание  функции  должно начинаться оператором Function,  за которым через пробел следуют названиефункции и ее аргументы,  заключенные в  скобки  и  разделенные     запятыми.  Затем  идет  собственно  текст  программного  кода функции,  а  заканчиваться описание  должно  оператором   End Function.

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

Function NDS(Value)

NDS=Value*0.15

End Function

Встраиваниефункций.

Щелкните по   3-й пиктограмме Object Browser из пиктографического  меню VBA или вызовитеодноименную директиву из меню View.

Функции, определенные пользователем,  рассматриваются  в программе Excel как самостоятельные объекты.  В  поле  списка Methods/Properties:   будет   находиться  имя новой  функции. Щелкните мышью сначала по имени,  а затем по командной  кнопке Options,тогда откроется диалоговое окно Macro Options. В поле Description: введите поясняющий текст,  который позднее будет    использован Конструкторомфункций.  В списке Function Category укажите категорию,  вкоторую Вы хотите записать свою функцию. Например, функцию, вычисляющую налогна добавленную стоимость, следует  поместить  в  категорию   Financial.  В   дальнейшем Конструктор  функций  поместит  Вашу  функцию в указанную Вамикатегорию.  Закройте окно Macro Options щелчком  по командной       кнопке OK, а окно Object Browser — кнопкойClose.

Применениефункций.

Перейдите на рабочийлист, где будет расположена таблица. Переместите  указатель  ячеек  в  ячейку, в   которой   будет находиться  формула,  и  введите  в нее знак равенства. Затем щелкните по 14-й пиктограмме Конструктора функций на  основнойпиктографической панели.

Появится диалоговое окноКонструктора функций.  На первом шаге выберите категорию Financial и вправом поле найдите свою функцию NDS.  Щелкните по названию этой  функции, после  чего перейдите к следующему шагу, щелкнув по командной кнопке Next.

Откроется второедиалоговое  окно  Конструктора  функций. Здесь  можно будет увидеть Вашкомментарий к функции,  который был введен  ранее  в  окне  макроопций. Укажите  единственный аргумент  для  этой  функции  Value и закройте диалоговоеокно Конструктора щелчком по кнопке Finish.

В таблице  появитсязначение,  составляющее 15%  величины аргумента. В таблице с этой функцией можно  работать  как  с обычной функцией программы Excel.

еще рефераты
Еще работы по информатике, программированию