
- •Ответы к экзамену ппп
- •1 Понятие ппп. Офисное программирование. Основные тенденции в развитии ппп.
- •2 Среда разработки vbe. Синтаксис vba. Достоинства и недостатки vba
- •Элементы проекта vba
- •Характеристика компонентов vbe
- •3 Объектная модель компонентов ms office. Библиотеки типов. Терминальные свойства и свойства-участники приложения. Разработка приложений для ms office.
- •4 Типы модулей программного проекта. Разделы модуля. Защита кода проекта. Область видимости модуля, переменных. Окна отладки vba
- •Свойства проекта
- •Защита проекта
- •Проект и область видимости модулей
- •5 Типы данных vba. Передача параметров в процедуру.
- •6 Функции для организации окон ввода и сообщений и их аргументы. Управляющие операторы vba (выбора и цикла).
- •7 Понятие макроса, его проектирование, способы запуска, правила сохранения, передача в другие проекты.
- •8 Определение объекта, коллекции объектов, класса, объектной модели. Механизмы инкапсуляции, встраивания, наследования, полиморфизма
- •9 Формы и элементы управления. Событийные процедуры.
- •11 Объекты Помощник, его надпись. Компонент Microsoft Agent.
- •12 Объекты (библиотеки) каркаса Excel. Формат ссылок r1c1
- •13 Интеграция с внешними приложениями. Объект Automation. Создание объекта. Раннее и позднее связывание объектных переменных
- •14 Объекты и методы библиотеки Microsoft Scripting Runtime Library для работы с файловой системой.
- •15 Подходы анализа возможных ошибок в ходе выполнения программы. Конструкции перехвата ошибок
- •2.1. Оператор On Error
- •2.2 Процедура обработки ошибки
- •2.3. Оператор Resume
- •Состав каркаса Microsoft Word. Объектная модель приложения.
- •Библиотека ado. Объектная модель. Вызов источников данных dsn и Jet-провайдера. Формирование sql-команды.
- •Объект Connection и установка подключения к базе данных
- •1 Способ
- •2 Способ
- •Задачи автоматизации в Access. Ограничения настольных субд. Объектная модель ms Access. Отличия макросов Access от макросов других приложений
14 Объекты и методы библиотеки Microsoft Scripting Runtime Library для работы с файловой системой.
Работа с файловой системой опирается на библиотеку Microsoft Scripting Runtime Library (файл Scrrun.dll): для использования этой библиотеки надо установить ссылку на нее в диалоговом окне Tools – References.
VBA позволяет обрабатывать файлы, работать с дисками, файловой системой средствами объектной файловой системы (File System Object Model, FSO).
Основными объектами FSO являются:
FilesSystemObject
File
Drive (позволяет собрать разнообразную информацию о диске)
TextStream
Folder
Dictionary
Создание объекта FileSystemObject с неявной ссылкой на Microsoft Scripting Runtime (без подлючения библиотеки, недостатком данного подхода является то, что переменные объявляются с типом Variant и поэтому в редакторе кода не будут отображаться в списке свойства и методы соответствующих объектов).
Sub CreateFileSystemObject1()
Dim fs As Variant
Set fs = CreateObject("Scripting.FileSystemObject")
Dim ts As Variant
Set ts = fs.CreateTextFile("c:\testfile1.txt", True)
ts.WriteLine ("Hello, FSO!")
ts.Close
End Sub
15 Подходы анализа возможных ошибок в ходе выполнения программы. Конструкции перехвата ошибок
Обработка ошибок и отладка программ
Возможны два подхода:
предотвращающий ошибки. Программно анализируются вводимые или вычисляемые данные и в случае, если они могут приводить к ошибке, обеспечивается, чтобы программа информировала пользователя о необходимости корректного задания данных;
Private sub cmdOK)Click()
Dim a,b,c as Double
If Not IsNumeric(txtA.Text) Then
MsgBox "Некорректный ввод значения a"
txtA.SetFocus
Exit Sub
End If
If Not IsNumeric(txtB.Text) Then
MsgBox "Некорректный ввод значения b"
txtB.SetFocus
Exit Sub
End If
a = CDbl(txtA.Text)
b = CDbl(txtB.Text)
If b = 0 Then
MsgBox "Введен ноль"
txtB.SetFocus
Exit Sub
End If
с = a / b
txtC.Text = CStr(c)
End Sub
обрабатывающий ошибки. В случае появления ошибки она перехватывается, обрабатывается и создается программный отклик на возникшую ошибку.
2.1. Оператор On Error
Оператор on Error производит перехват ошибки. Он устанавливает, что программа должна делать в случае появления ошибки. Допустимы следующие варианты синтаксиса:
On Error GoTo line
Активизирует процедуру обработки ошибок, начало которой определяется обязательным параметром line.
Его значением может быть либо метка строки, либо номер строки.
On Error Resume Next
Указывает, что при возникновении ошибки происходит передача управления на инструкцию, непосредственно следующую за инструкцией, где возникла ошибка.
On Error GoTo 0
Отключает любой активизированный обработчик ошибок в текущей процедуре, таким образом, инструкция on Error Goto о отменяет действие ИНСТРУКЦИИ On Error Resume Next.
2.2 Процедура обработки ошибки
Процедура обработки ошибки определяет тип возникшей ошибки и устанавливает, что программа должна делать в зависимости от типа ошибки.
2.3. Оператор Resume
Обеспечивает процедуре возможность продолжить работу после обработки ошибки.
Допустимы три варианта синтаксиса этого оператора:
Resume
После обработки ошибки управление передается той инструкции, в которой произошла ошибка.
Resume Next
После обработки ошибки управление передается инструкции, следующей за инструкцией в которой произошла ошибка.
Resume Line
После обработки ошибки управление передается инструкции, определенной параметром line. Значением этого параметра может быть любая метка строки или номер строки.
Пример:
Private Sub CommandButton1_Click()
Dim a As Double, b As Double, c As Double
On Error GoTo errorHandler1
a = CDbl(TextBox1.Text)
On Error GoTo errorHandler2
b = CDbl(TextBox2.Text)
c = a / b
TextBox3.Text = CStr(c)
Exit Sub
errorHandler1:
MsgBox "Произошла ошибка: " & "-" & Err.Description
TextBox1.SetFocus
Exit Sub
errorHandler2:
Dim msg As String
Select Case Err.Number
Case 6
msg = "Переполнение"
Case 11
msg = "На ноль делить нельзя"
Case 13
msg = "Должно быть числа"
Case Else
msg = "Непредвиденная ошибка"
End Select
MsgBox "Произошло ошибка: " & CStr(Err.Number) & "-" & _
Err.Description & vbCr & msg
TextBox2.SetFocus
Exit Sub
End Sub