Tw-city.info

IT Новости
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Программирование на vba в microsoft office

Программирование на vba в microsoft office

Программирование на VBA в Microsoft Office.

(не для чайников:-(
Здесь мы рассмотрим технологию объектно-ориентированного программирования (ООП) на Visual Basic for Applications. Описывать преимущества данной технологии нет смысла — тот, кто не пробовал ее применять на практике, этого все равно не поймет. Поэтому сразу к делу.

Запустите Word или Excel, откройте документ со своим приложением и запустите редактор Visual Basic (для начинающих — комбинация Alt+F11).
В окне проекта кликните правой кнопкой мыши и во всплывающем меню выберите пункт «Вставить->» и далее «Модуль класса» — объекты по аналогии с C/C++ называются классами, и каждый класс хранится в отдельном модуле класса.
В дереве объектов выделите свой класс и в окне свойств наберите желаемое имя для него, например, MyClass. Это имя Вы будете использовать в дальнейшем в своих программах для создания экземпляров класса — переменных типа MyClass.
Теперь дважды кликните по имени модуля класса в окне проекта — откроется пустое окно для ввода исходного текста.
Все процедуры и функции, описанные в модуле класса, будут являться методами этого класса, соответственно, все переменные, описанные на уровне модуля, будут являться свойствами класса.
Инкапсуляция осуществляется применением ключевых слов Public и Private перед описанием свойств и методов, а в остальном — все то же самое, например:

Public hFile As Long ‘- свойство — ссылка на открытый файл
Private ownFile As String ‘- свойство — имя файла
Public Function getDataRecord(NumRec As Long) As String ‘- метод — чтение записи из файла, параметр — номер записи.

Все свойства и методы, описанные как Public, будут доступны для изменения и вызова из программ, в которых они будут использоваться. В нашем примере метод getDataRecord может быть вызван из основной программы.
Свойство hFile также может быть использовано основной программой без ведома самого класса.
Соответственно, все описанное как Private будет скрыто от основной программы.
В примере свойство ownFile доступно для изменения только внутри самого объекта его методами, основная программа ни прямо, ни косвенно (объявлением одноименной переменной) не может изменять значение этого свойства.
Рассмотрим более необычные варианты объявлений. В большинстве случаев требуется, чтобы доступ к свойствам класса был разрешен исключительно с помощью методов, а в некоторых случаях свойств вообще фактически не существует, а значения должны вычисляться непосредственно в момент обращения.
Для этого в языке Visual Basic существует механизм описания таких свойств с помощью ключевого слова Property.
Свойства, при чтении значения которого должен вызываться метод вычисления или передачи этого значения, описываются следующим образом:

Property Get FileName() As String
‘код программы
‘поиска, вычисления
‘или передачи значения
FileName= ownFile ‘ — возврат значения
End Property

Свойства, при присваивании значения которым должен вызываться метод обработки этого значения, описываются аналогично, только с применением ключевых слов Property Let либо Property Set. Разница между ними состоит в том, что Property Let применяется для передачи значений стандартных и предопределенных программистом типов, а Property Let применяется для объектов Office и объектных переменных программы.

Property Let FileName (ByVal strFileName As String)
ownFileName = strFileName ‘ — присваивание строкового значения
End Property

Property Set SelectedSheet (ByVal CurrSheet As Object)
Set Area = CurrSheet ‘ — присваивание объекта
End Property

Для использования класса необходимо объявить переменную типа MyClass и затем создать экземпляр класса с помощью оператора new. Присваивание значений объектной переменной всегда предваряется оператором Set. Например:

Dim ObjVar As MyClass
Set ObjVar = New MyClass

Инициализация объекта при его создании и деинициализация при удалении осуществляются двумя предопределенными методами, которые можно переопределить, чтобы добавить свой код.

Private Sub Class_Initialize()
‘Код инициализации
End Sub

Private Sub Class_Terminate()
‘Код деинициализации
End Sub

К сожалению, в VBA не реализованы наследование и полиморфизм, но даже в таком «обрезанном» варианте применение ООП представляется более предпочтительным, нежели создание обычных процедур и функций.
При создании объемного приложения внутри документа Microsoft Office нередко наступает момент, когда стандартных средств языка Visual Basic не хватает для полноценных и более простых решений. Один из вариантов реализации программных задач заключается в вызове соответствующих функций Windows API.
Определение импортируемых функций ядра Windows, а также .DLL-библиотек в языке Visual Basic осуществляется оператором Declare, например:

Public Declare Function OemToCharBuffA Lib «User32» (ByVal src As String, ByVal Dest As String, ByVal cnt As Long) As Long

При этом перед каждым параметром необходимо ставить ключевое слово ByVal — передача параметра по значению. Проблемой иногда бывает необходимость передачи указателей на различные структуры.
Именно в таком варианте удобно применять объекты, скрывая от основной программы код вызова WinAPI и обработку громоздких структур данных, передаваемых через параметры, чтобы не «засорять» основные алгоритмы.
Рассмотрим реализацию варианта вызова диалогового окна Windows для выбора файла нужного типа. Вставьте в проект модуль класса и назовите его dlgFileOpen.
В окне исходного текста введите следующий код:

‘Определение типа необходимой структуры
Private Type OPENFILENAME
lngStructSize As Long — ‘Размер структуры
hwndOwner As Long — ‘Дескриптор окна владельца
hInstance As Long — ‘Дескриптор приложения
strFilter As String — ‘Строка фильтра
strCustomFilter As String — ‘Строка с выбранным фильтром
intMaxCustFilter As Long — ‘Длина буфера для строки выбранного фильтра ‘Всегда должна быть равна Len(strCustomFilter)
intFilterIndex As Long — ‘Индекс строки фильтра
strFile As String — ‘Полное имя выбранного файла (путь и файл)
intMaxFile As Long — ‘Длина буфера для полного имени файла ‘Всегда должна быть равна Len(strFile)
strFileTitle As String — ‘Имя выбранного файла
intMaxFileTitle As Long — ‘Длина буфера для имени выбранного файла ‘Всегда должна быть равна Len(strFileTitle)
strInitialDir As String — ‘Имя начального каталога (при открытии окна)
strTitle As String — ‘Заголовок диалогового окна
lngFlags As Long — ‘Флаги диалогового окна
intFileOffset As Integer — ‘Смещение имени файла
intFileException As Integer — ‘Смещение расширения файла
strDefExt As String — ‘Расширение файла по умолчанию
lngCustData As Long — ‘Данные для обработки
lngfnHook As Long — ‘Указатель функции обработки
strTemplateName As String — ‘Имя шаблона диалогового окна
End Type
‘Описание функций Win32 API как скрытых методов класса
Private Declare Function GetOpenFileName Lib «comdlg32» _
Alias «GetOpenFileNameA» (ofn As OPENFILENAME) As Boolean

Private Declare Function GetActiveWindow Lib «user32» () As Boolean

‘Переменная типа структуры — скрытое свойство класса
Private ownFileDlg As OPENFILENAME

‘Метод вызова диалогового окна.
‘Принимает параметры — строка фильтра, строка расширений,
‘начальный каталог, строка заголовка окна.
‘Возвращает полное имя файла.
Public Function OpenFile(szFilter As String, _
Optional szDefExt As String, _
Optional szInitDir As String, _
Optional szCaption As String) As String

‘Задание начальных значений полей структуры
With ownFileDlg
.hInstance = 0
.hwndOwner = GetActiveWindow()
.strFile = String(255, 0)
.intMaxFile = 255
.strFilter = szFilter
.intMaxCustFilter = Len(szFilter)
.strFileTitle = String(255, 0)
.intMaxFileTitle = 255
.strDefExt = szDefExt
.strInitialDir = szInitDir
.strTitle = szCaption
.lngFlags = OFN_FILEMUSTEXIST Or OFN_EXTENTIONDIFFERENT
.lngStructSize = Len(ownFileDlg)
End With

Читать еще:  Как создать язык программирования с нуля

If GetOpenFileName(ownFileDlg) Then
OpenFile = ownFileDlg.strFile
End If

Для использования этого класса создайте форму — в окне проекта кликнуть правой кнопкой мыши и выбрать «Вставить->/ UserForm».
В окне свойств формы в свойстве (Name) укажите имя своего творения, пусть это будет ownMediaPlayer. Теперь в форме создайте строку ввода («Поле») и кнопку.
Дважды щелкните по кнопке и в окне исходного текста введите следующий код.

‘Описание экземпляра класса
Dim dlgFiler As dlgFileOpen

‘Инициализация класса
Private Sub UserForm_Initialize()
‘Создание экземпляра класса
Set dlgFiler = New dlgFileOpen
End Sub

‘Обработка события кнопки — нажатие
Private Sub CommandButton1_Click()
‘Присваивание значения полю ввода — полное имя файла
TextBox1.Value = dlgFiler.OpenFile(«WAV-Файлы» & _
vbNullChar & «*.WAV». «Выбирайте звуковой файл»)
End Sub

Использование такого объекта уже гораздо проще и, в отличие от предыдущего исходника, сохраняет читабельность основной программы.
При желании Вы можете дополнить объект своими методами, возвращающими более подробную информацию о последнем выбранном файле из структуры ownFileDlg. В этом случае наиболее удобно будет использовать объявления методов-свойств Property Get.
Чтобы увидеть форму с объектом в деле, прямо на листе Excel создайте кнопку, щелкните по ней правой кнопкой мыши и выберите «Исходный текст».
Внутри метода обработки события — нажатия кнопки введите строку запуска формы:

Учебники, справочники, самоучители

Посоветуйте пожалуйста самоучитель где всё разжованно и не понять не возможно

Обсуждение литературы следует вести не здесь, а в этой теме:
Обсуждение учебников, справочников, самоучителей по VBA

Есть ли литература (учебники/самоучители и пр.) по практическому применению языка C#?
Всем привет. Извиняюсь за тупой вопрос. Я начал изучать C#, но это все теория. Есть ли какая-либо.

Посоветуйте справочники, учебники и прочую литературу для студентов ВУЗов
Посоветуйте, пожалуйста, справочники, учебники и прочую литературу по С для студентов вузов.

Самоучители
Добрый вечер ) Уверена, многие изучали С++ самостоятельно. Вопрос: какая книга более всего.

О, если б такой был!

Я пользовался справкой Word 97 (она русская) и Стив Каммингс — VBA для «чайников»

Выбирайте какой лучше

VBA в MS Office 2007 Автор: А.А. Заика

Бесплатная электронная версия учебника по ссылке: http://www.intuit.ru/department/se/vbamsoffice2007/1/ — регистрируйтесь и читайте на здоровье Мне там очень понравилось, что уроки не слишком большие и каждый урок снабжен примером (можно скачать) как и просили «не понять не возможно » . Успехов.

Пособие предельно структурировано (причем не в оглавлении), а во всем курсе. Почти как справочник, с постоянными примерами. Легко можно пропустить, то что уже знаете, не вчитываясь. Также четко структурировано описание различных объектов, их свойств .

Для продвинутых пользователей:

VBA 7.1 Language Reference
(с новшествами офиса 2013).

Джон Уокенбах Microsoft Excel 2010 Профессиональное программирование на VBA.
http://litvik.ru/2/13/uchebniki_manu. na-vba-cd.html

Я с этой книжкой много чего понял.

Информации не много, но про переменные, типы данных VBA, управляющие структуры в VBA, некоторые другие вещи можно почитать.
(для начинающих)

Каммингс С. VBA для «чайников», 2000г.
Аннотация (не моя):
Обсуждаемые приемы программирования иллюстрируются примерами, которые можно сразу же опробовать на практике. Полученные знания вы сможете применить как для настройки и усовершенствования популярных офисных приложений, включая приложения Office 2000, так и для создания собственных приложений.

Книга рассчитана на тех, перед кем стоит задача быстро и без лишних усилий научиться программировать для Windows, используя VBA.

Гарбер Г.З. — Основы программирования на VBA в Microsoft Excel 2007

P.S. Тем у кого не качается с вложений: http://rghost.ru/42870161

Ростислав Михеев — Программирование на VBA в Microsoft Office 2003

В основу книги положен материал учебного курса «Программирование в Microsoft Office для пользователей», который в течение нескольких лет читается сотрудникам крупнейших предприятий России. Рассмотрено программирование на языке VBA с использованием возможностей объектных моделей приложений Microsoft Office. Описан синтаксис языка VBA, основные приемы работы с редактором кода, впервые подробно рассматриваются объектные модели основных приложений Microsoft Office: Word, Excel, Access, Outlook, PowerPoint, Project. Материал сопровождается многочисленными практическими примерами. К каждой главе книги предусмотрены задания для самостоятельной работы с подробными решениями.

Слепцова Л.Д. — Программирование на VBA в Microsoft Office 2010. Самоучитель

Описание: Эта книга предназначена для всех, у кого есть желание научиться программировать на языке VBA в среде Office 2010, начиная практически с нуля. Она предназначена для индивидуального обучения, написана простым, доступным языком и рассчитана на пользователей с любым уровнем компьютерных знаний. Книга содержит множество практических примеров, а выполнение всех приведенных пошаговых инструкций и практическое применение описанных приемов работы непосредственно при чтении книги поможет быстро научиться создавать собственные программы на языке VBA. Единственное, что действительно необходимо читателю, — это наличие под рукой компьютера с установленными программами Microsoft Office 2010 (хотя бы одной!) и искреннее стремление научиться программировать на языке VBA.

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

VBA Excel. Начинаем программировать с нуля

Первое знакомство с редактором VBA Excel, создание процедур (подпрограмм) и написание простейшего кода, работающего с переменными и ячейками рабочего листа.

Знакомство с редактором VBA

  1. Создайте новую книгу Excel и сохраните ее как книгу с поддержкой макросов с расширением .xlsm. В старых версиях Excel по 2003 год – как обычную книгу с расширением .xls.
  2. Нажмите сочетание клавиш «левая_клавиша_Alt+F11», которое откроет редактор VBA. С правой клавишей Alt такой фокус не пройдет. Также, в редактор VBA можно перейти по ссылке «Visual Basic» из панели инструментов «Разработчик» на ленте быстрого доступа. Если вкладки «Разработчик» на ленте нет, ее следует добавить в настройках параметров Excel.

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

  1. Нажмите кнопку «Module» во вкладке «Insert» главного меню. То же подменю откроется при нажатии на вторую кнопку после значка Excel на панели инструментов.

После нажатия кнопки «Module» вы увидите ссылку на него, появившуюся в проводнике слева.

Первая программа на VBA Excel

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

  1. Откройте стандартный модуль двойным кликом по его ссылке в проводнике. Поместите в него курсор и нажмите кнопку «Procedure…» во вкладке «Insert» главного меню. Та же ссылка будет доступна при нажатии на вторую кнопку после значка Excel на панели инструментов.

В результате откроется окно добавления шаблона процедуры (Sub).

  1. Наберите в поле «Name» имя процедуры: «Primer1», или скопируйте его отсюда и вставьте в поле «Name». Нажмите кнопку «OK», чтобы добавить в модуль первую и последнюю строки процедуры.
Читать еще:  Объективно ориентированное программирование c

Имя процедуры может быть написано как на латинице, так и на кириллице, может содержать цифры и знак подчеркивания. Оно обязательно должно начинаться с буквы и не содержать пробелы, вместо которых следует использовать знак подчеркивания.

  1. Вставьте внутрь шаблона процедуры следующую строку: MsgBox «Привет» .

Функция MsgBox выводит информационное сообщение с указанным текстом. В нашем примере – это «Привет».

  1. Проверьте, что курсор находится внутри процедуры, и запустите ее, нажав клавишу «F5». А также, запустить процедуру на выполнение можно, нажав на треугольник (на изображении под пунктом меню «Debug») или на кнопку «Run Sub/UserForm» во вкладке «Run» главного меню редактора VBA Excel.


Если вы увидели такое сообщение, как на изображении, то, поздравляю – вы написали свою первую программу!

Работа с переменными

Чтобы использовать в процедуре переменные, их необходимо объявить с помощью ключевого слова «Dim». Если при объявлении переменных не указать типы данных, они смогут принимать любые доступные в VBA Excel значения. Комментарии в тексте процедур начинаются со знака «’» (апостроф).

Пример 2
Присвоение переменным числовых значений:

Программирование на vba в microsoft office

div.main
Программирование на VBA в Microsoft Office
Проигрыватель видео файлов
(не для чайников:-(

Как уже было написано в предыдущей статье, для полного контроля над проигрыванием мультимедийных файлов надо запрограммировать работу приложения с MCI — Media Control Interface. Этот интерфейс позволяет практически одинаково воспроизводить мультимедиа-данные различных типов. Все мультимедиа-объекты, такие как AVI-видеофайл, звуковой WAV-файл, музыкальные MIDI-файлы, треки компакт-диска и другие, воспринимаются MCI как устройства, которые можно открыть, воспроизвести и закрыть. Поэтому различия между выводом звуковых и видео-файлов минимальны.
Так как MCI является составной частью Windows и работа с ним программируется с помощью функций WinAPI, то данная статья может представлять интерес и для разработчиков, использующих другие языки программирования.
Рассмотрим пример объекта для проигрывания AVI-видеороликов в окне формы через MCI.
Запустите Word или Excel, откройте документ с примерами первой статьи (КГ № 2(343) «. Создаем свои объекты.») — объектом dlgFileOpen и формой ownMediaPlayer для выбора WAV-файлов. Вышеозначенный пример таблицы Excel с программами на VBA Вы сможете также найти на http://brestmedia.f2s.com/ в разделе «Скачать».
Запустите редактор Visual Basic (для начинающих — комбинация Alt+F11). Далее нам понадобится еще один объект. В окне проекта кликните правой кнопкой мыши и во всплывающем меню выберите пункт «Вставить►» и далее «Модуль класса». В окне свойств назовите класс VideoPlayer.
Теперь в окне исходного текста будем программировать.
Работа с MCI идет через вызов одной-единственной функции WinAPI — mciSendCommand из библиотеки WINMM.DLL.
Для использования на VBA внутри объекта VideoPlayer опишем ее следующим образом: Private Declare Function mciSendCommand Lib «winmm.dll» _ Alias «mciSendCommandA» (ByVal wDeviceID As Long, ByVal uMessage As Long, _ ByVal dwParam1 As Long, ByRef dwParam1 As Any) As Long

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

Private Declare Function mciGetErrorString Lib «winmm.dll» _ Alias «mciGetErrorStringA» (ByVal dwError As Long, ByVal lpstrBuffer As String, _ ByVal uLength As Long) As Long Вспомогательные переменные опишем как скрытые свойства объекта. ‘Имя видеофайла Private AVIFile As String ‘Ссылка на открытый AVI-файл Private hAVI As Long ‘Код ошибки Private hErr As Long

Так как воспроизведение видео (в отличие от звука;) должно происходить в каком-нибудь окне, то по умолчанию зарегистрированный в Windows проигрыватель создает свое собственное окно. Если надо организовать вывод в окно приложения, надо передать в MCI ссылку на него. В данном примере будем пользоваться окном формы. Оно будет активным, например, в момент нажатия кнопки воспроизведения. Поэтому, чтобы получить ссылку на окно, воспользуемся функцией WinAPI — GetActiveWindow. Она возвращает ссылку на текущее активное окно.

Private Declare Function GetActiveWindow _ Lib «user32» () As Boolean

Для определения размеров области вывода внутри окна опишем еще одну функцию Windows.

Private Declare Function GetClientRect Lib «user32» _ (ByVal hWnd As Long, lpRect As RECT) As Long

Теперь перейдем непосредственно к программированию команд MCI. Для этого нам понадобится список всех типов и констант этого интерфейса. В рамках газетной статьи приводить его бессмысленно, т.к. эту информацию легко можно найти в любом серьезном help’е по WinAPI.
А проще всего скачать готовый работающий пример вместе с исходниками с сайта http://brestmedia.f2s.com/.

Свойство-метод Error, возвращающее описание ошибки, используется только для чтения внутри других методов объекта.

Property Get Error() Dim strBuffer As String Dim lngPos As Long Dim lngRet As Long If hErr <> 0 Then ‘Создать пустую строку как буфер strBuffer = Space(1024) ‘Получить сообщение по коду ошибки Call mciGetErrorString(hErr, strBuffer, 1024) hErr=0 End If Error = Trim(strBuffer) End Property

Свойство-метод Play, при присваивании ему имени AVI-файла начинает воспроизводить видео в текущем активном окне.

Property Let Play(ByVal strAVIFileName As String) ‘Описание переменных для работы с MCI Dim mci As MCI_OPEN_PARMS Dim mpp As MCI_PLAY_PARMS Dim mow As MCI_OVLY_WINDOW_PARMS Dim morSource As MCI_OVLY_RECT_PARMS Dim morDest As MCI_OVLY_RECT_PARMS ‘Описание переменных для работы с окном Dim mhWnd As Long Dim rc As RECT mhWnd = 0 ‘Имя видеофайла AVIFile = strAVIFileName ‘Открытие мультимедиа-устройства With mci .strDeviceType = «avivideo» .strElementName = strAVIFileName End With If hAVI <> 0 Then CloseDevice End If hErr = mciSendCommand(0, MCI_OPEN, MCI_OPEN_TYPE Or MCI_OPEN_ELEMENT, mci) If hErr = 0 Then hAVI = mci.lngDeviceID Else ‘Вывод сообщения об ошибке Err.Raise hErr, «VideoPlayer::Play», Error ‘OpenDevice End If ‘Установка активного окна для воспроизведения Dim lngFlags As Long If hAVI Then ‘Установка флагов по умолчанию lngFlags = MCI_OVLY_WINDOW_HWND Or _ MCI_OVLY_WINDOW_ENABLE_STRETCH ‘ MCI_OVLY_WINDOW_DISABLE_STRETCH ‘Получить ссылку на активное окно mhWnd = GetActiveWindow() mow.hWnd = mhWnd ‘Установка названия окна ‘mow.strText = mstrCaption ‘lngFlags = lngFlags Or MCI_OVLY_WINDOW_TEXT ‘Запуск MCI_WINDOW команды ‘для указания окна hErr = mciSendCommand(hAVI, MCI_WINDOW, _ lngFlags, mow) If hErr <> 0 Then Err.Raise hErr, «VideoPlayer::Play», Error End If End If ‘Центрирование внутри области вывода окна If Len(strAVIFileName) > 0 And (mhWnd <> 0) Then ‘ Запуск MCI_WHERE команды для получения ‘ размера области вывода .AVI файла hErr = mciSendCommand(hAVI, MCI_WHERE, _ MCI_OVLY_WHERE_SOURCE, morSource) If hErr = 0 Then ‘ Получить размеры доступной области окна для вывода If CBool(GetClientRect(mhWnd, rc)) Then ‘ Центрирование With rc morDest.rc.Top = (.Bottom —.Top — _ morSource.rc.Bottom) / 2 morDest.rc.Left = (.Right —.Left — _ morSource.rc.Right) / 2 End With ‘ Запуск MCI_PUT команды для размещения ‘ области вывода в расчитанной позиции ‘ указанного окна hErr = mciSendCommand(hAVI, _ MCI_PUT, MCI_OVLY_PUT_DESTINATION Or _ MCI_OVLY_RECT, morDest) If hErr <> 0 Then Err.Raise hErr, «VideoPlayer::Play», Error End If Else Err.Raise hErr, «VideoPlayer::Play», Error End If Else Err.Raise hErr, «VideoPlayer::Play», Error End If End If ‘Воспроизведение If hAVI Then hErr = mciSendCommand(hAVI, MCI_PLAY, 0&, 0&) If hErr <> 0 Then Err.Raise hErr, «VideoPlayer::Play», Error End If End If End Property ‘Метод закрывает мультимедиа-устройство ‘Доступен для вызова из других объектов Public Sub CloseDevice() If hAVI Then ‘ Если видео воспроизводится — остановить If IsPlaying Then StopPlaying End If ‘ Закрыть устройство hErr = mciSendCommand(hAVI, MCI_CLOSE, 0&, 0&) If hErr = 0 Then hAVI = 0 Else Err.Raise hErr, «VideoPlayer::CloseDevice», Error End If End If End Sub ‘Метод прерывает воспроизведение ‘Доступен для вызова из других объектов Public Sub StopPlaying() If hAVI Then hErr = mciSendCommand(hAVI, MCI_STOP, 0&, 0&) If hErr <> 0 Then Err.Raise hErr, «VideoPlayer::StopPlaying», Error End If End If End Sub ‘Свойство-метод, возвращает истину ‘если идет воспроизведение Property Get IsPlaying() As Boolean Dim mst As MCI_STATUS_PARMS If hAVI Then With mst .lngItem = MCI_STATUS_MODE .lngTrack = 0 End With ‘Получить состояние устройства hErr = mciSendCommand(hAVI, MCI_STATUS, _ MCI_STATUS_ITEM, mst) If hErr = 0 Then IsPlaying = (mst.lngReturn = MCI_MODE_PLAY) Else Err.Raise hErr, «VideoPlayer::IsPlaying», Error End If End If End Property ‘Удаление класса Private Sub Class_Terminate() CloseDevice End Sub

Читать еще:  Visual studio как добавить язык программирования

Для использования VideoPlayer в редакторе Visual Basic откройте для редактирования форму ownMediaPlayer.
Добавьте кнопку проигрывания видео и двойным щелчком мыши по форме перейдите в окно редактирования исходного текста формы.
В разделе описаний добавьте строку:

Программирование на vba в microsoft office


Книга: Использование макросов в Excel.
Автор: С. Роман
Страниц: 507
Формат: DJVU
Размер: 8.02 Mb

Несмотря на мощные функциональные возможности, обеспечиваемые пользовательским интерфейсом Excel, существует ряд задач, выполнение которых возможно только программным путем. Книга «Использование макросов в Excel” представляет собой введение в программирование на Excel VBA, содержащее примеры решения различных практических задач, возникающих при работе в Excel. Материал книги рассчитан на пользователей Excel, а также программистов, которые не знакомых с объектной моделью Excel. Наряду с разделами, посвященными разработке макросов для Excel 2002, здесь излагается вводный курс по написанию макросов и программ в среде Excel.

Книга: Интенсивный курс программирования в Excel за выходные
Автор: П. Эйткен
Издательство: Диалектика
Страниц: 421
Формат: DJVU
Размер: 12.6 Мб
Качество: Нормальное
Язык: Русский
Жанр: программирование
Год издания: 2004
ISBN: 5-8459-0687-3

Возможности Microsoft Excel не ограничиваются только работой с таблицами данных. За средствами обработки электронных таблиц прячется сильный язык программирования — VBA (Visual Basic for Applications). Впрочем, практически хоть какой юзер имеет возможность выучиться писать программы на языке VBA для решения самых разнородных задач в Excel — от механического исполнения вычислений до создания системы для ввода данных с собственными экранными формами и с вероятностью ревизии корректности набираемых значений.

Книга: Программирование на VBA 2002
Автор: В.Г. Кузьменко
Качество: Нормальное
Язык: Русский
Жанр: программирование

В книге содержится курс по программированию на Visual Basic for Applications (VBA), являющимся базовым языком в приложениях Microsoft Office (Word, Excel, Access, PowerPoint, FrontPage, Visio и др.). Книга предназначена для начинающих программировать в среде Windows с применением Word-, Excel-, PowerPoint-объектов. Часть книги посвящена вопросам разработки Office-приложений, использующих базы данных, хранимых как в отдельных файлах, так и на удаленных серверах. Материала книги достаточно для изучения основ языка Visual Basic и создания простых макросов, помогающих автоматизировать рутинную повторяющуюся работу с документами, электронными таблицами, диаграммами, презентациями и т.д., а также для разработки довольно сложных приложений обработки баз данных с использованием диалоговых окон, обеспечивающих пользователя самыми современными интерфейсными средствами. Большинство примеров в книге посвящены актуальным в настоящее время вопросам коммерческой деятельности, поэтому книга будет очень полезной менеджерам различных уровней, которым, по-видимому, и предназначен как Microsoft Office, так и встроенный язык программирования VBA.
Приложения в конце книги могут послужить удобным справочником при работе как с VBA, так и с обычным VB.

Книга: Профессиональное программирование на VBA в Excel 2003
Автор: Джон Уокенбах
Издательство: Вильямс
Формат: PDF
Размер: 11 Мб
Качество: Отличное
Язык: Русский
Год издания: 2005
ISBN: 5-8459-0771-3
К книге прилагается диск

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

Pdf-версия отредактирована и любезно предоставлена участником Alex_ST.

Книга: : Профессиональное программирование на VBA в Excel 2010
Автор: Джон Уокенбах
Издательство: Wiley
Формат: PDF
Страниц: 1308
Размер: 11,9 Мб
Качество: Отличное
Язык: Английский
Год издания: 2010

This book focuses on Visual Basic for Applications (VBA), the programming language built into Excel (and other applications that make up Microsoft Office). More specifically, it will show you how to write programs that automate various tasks in Excel. This book covers everything from recording simple macros through creating sophisticated user-oriented applications and utilities. This book does not cover Microsoft Visual Studio Tools for Office (VSTO). VSTO is a relatively new technology that uses Visual Basic .NET and Microsoft Visual C#. VSTO can also be used to control Excel and other Microsoft Office applications.
This is not a book for beginning Excel users. If you have no experience with Excel, a better choice might be Excel 2010 Bible, which provides comprehensive coverage of all the features of Excel. That book is meant for users of all levels.

Книга: : Профессиональное программирование на VBA в Excel 2010
Автор: Джон Уокенбах
Издательство: Диалектика
Формат: PDF
Страниц: 920
Размер: 22,1 Мб
Качество: Отличное
Язык: Русский
Год издания: 2010

Предмет рассмотрения этой книги — язык программирования Visual Basic for Applications (VBA), который встроен в Excel, а также в другие приложения, входящие в состав Microsoft Office. Здесь подробно описано создание программ, автоматизирую­щих выполнение различных задач в Excel, а также рассматривается широкий круг других тем — от написания простейших макросов до создания сложнейших приложений и ути­лит, рассчитанных на взаимодействие с пользователем. В этой книге нет описания программного пакета Microsoft Visual Studio Tools for Office (VSTO). Он представляет собой воплощение относительно новой технологии, ис­пользующей Visual Basic .NET и Microsoft Visual С#. Технология VSTO также может применяться для управления поведением программы Excel и других приложений Microsoft Office.

Книга не предназначена для начинающих пользователей Excel. Если у вас нет опыта работы с этим приложением, то прочтите сначала книгу Excel 2010. Библия пользо­вателя, в которой подробно рассказывается обо всех возможностях Excel (она адресована пользователям всех уровней).


Книга: Самоучитель VBA
Автор: Гарнаев А.
Издательство: bhv
Страниц: 512
Формат: html с картинками в rar
ISBN: 5-8206-0067-3
Размер: 2,22 Мб

Ссылка на основную публикацию
Adblock
detector