Стив Каммингс - VBA для чайников

Тут можно читать онлайн Стив Каммингс - VBA для чайников - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Компьютерное издательство Диалектика, год 2002. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    VBA для чайников
  • Автор:
  • Жанр:
  • Издательство:
    Компьютерное издательство Диалектика
  • Год:
    2002
  • Город:
    Москва
  • ISBN:
    нет данных
  • Рейтинг:
    4.09/5. Голосов: 111
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Стив Каммингс - VBA для чайников краткое содержание

VBA для чайников - описание и краткое содержание, автор Стив Каммингс, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Эта книга поможет освоить интегрированную среду разработки VBA и научиться программировать в VBA с использование объектов, их свойств, методов и событий. Обсуждаемые приемы программирования иллюстрируются примерами, которые можно сразу же опробовать на практике. Полученные знания вы сможете применить как для настройки и усовершенствования популярный офисных приложений, включая приложения Office XP, так и для создания собственных приложений.

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

VBA для чайников - читать онлайн бесплатно полную версию (весь текст целиком)

VBA для чайников - читать книгу онлайн бесплатно, автор Стив Каммингс
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Вот пример использования оператора On Error:

Sub ErrorHandlerDemo()

On Error GoTo ErrorHandler

MamaVariable = DoThisFunction (X,Y,Z)

PapaVariable = DoThatProcedure

EabyVariable = MamaVariable + PapaVariable

' здесь завершается выполнение процедуры, когда ошибок нет

Exit Sub

Error Handler:

(здесь размещаются операторы обработчика ошибок)

End Sub

Вам полезно знать, что существуют еще две формы оператора On Error.

* On Error GoTo 0 отменяет программную обработку ошибок в процедуре, начиная с данного места, и выполняет очистку объекта Err. Используйте этот оператор чтобы отменить действие ранее выполненного оператора On Error GoTo метка, если по каким-то причинам вы предпочтете отказаться от услуг своего обработчика ошибок в пользу "крикливо бесцеремонного" обработчика VBA.

* On Error Resume Next дает указание VBA игнорировать строку программного кода, ставшую причиной ошибки, и продолжить выполнение со следующей за ней строки. Ясно, что игнорирование ошибки не устраняет ее, но оператор On Error Resume Next оказывается полезным при работе с объектами из содержащего программу приложения или других компонентов, которые создали не вы, - эти достаточно тонкие вопросы обсуждаются в главе 14.

Если обработчик ошибок является частью той процедуры, в которой он размещен, VBA будет выполнять операторы обработчика ошибок при каждом выполнении процедуры. Ясно, что этого быть не должно. Нужно, чтобы обработчик ошибок выполнялся только тогда, когда в программе возникает ошибка.

Чтобы обработчик ошибок не выполнялся, когда это не нужно, необходимо добавить перед началом программного кода обработчика ошибок оператор Exit, как показано выше в примере из подраздела "Использование оператора On Error". Если это процедура типа Sub, то используйте оператор Exit Sub, а для процедуры типа Function используйте Exit Function.

Сам по себе обработчик ошибок состоит из следующих компонентов:

* метка, показывающая, где начинается программный код обработчика ошибок;

* программный код, призванный определить тип возникшей ошибки;

* программный код, обрабатывающий ошибку;

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

Для идентификации начала программного кода обработчика ошибок поместите в первой строке обработчика ошибок стандартную метку VBA (напомню, что метка представляет собой любое допустимое слово, за которым следует двоеточие). Как уже объяснялось выше, в случае возникновения ошибки этой метке должен передать управление оператор On Error. В следующем примере такой меткой является ThisIsTheErrorHandler:

* * *

ThisIsTheErrorHandler:

* * *

( здесь размещаются операторы обработчика ошибок)

* * *

End Sub

Программный код обработчика ошибок почти всегда размешают в самом конце процедуры, поэтому и в данном примере обработчик ошибок завершается оператором End Sub.

Перед обработчиком ошибок ставятся две главные задачи- выяснение типа возникшей ошибки и выполнение некоторых действий по ее исправлению. По сути, эти задачи различны, но на практике они выполняются почти одновременно.

Как правило, при выяснении того, что произошло, используется объект Err VBA. Объект Err всегда доступен в любой VBA-программе. Его можно использовать сразу, без предварительного создания его экземпляра. В объекте Err VBA автоматически сохраняет информацию о последней из случившихся в программе ошибок. Вашей программе остается только выяснить значения свойств объекта Err, в частности значения свойств Number (Номер) и Description (Описание).

Свойство Number сообщает номер ошибки. Вы можете присвоить значение этого свойства переменной или использовать его непосредственно в условном выражении, как в следующем примере:

Sub ЕщеОдноСообщение()

On Error GoTo ПытаюсьДуматьНоНеВыходит

* * *

(склонные к ошибкам операторы )

Exit Sub

ПытаюсьДуматьНоНеВыходит:

Select Case Err.Number

Case 7 ' выход за пределы памяти

( обработка ошибки номер 7)

Case 11 ' деление на нуль

(обработка ошибки номер 11) .

... (и т.д.)

Case Else

( обработка всех остальных ошибок)

End Select

End Sub

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

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

* Попытка получить данные снова из того же или альтернативного источника.

* Изменение неподходящих данных на подходящие с одновременной записью в файл или выводом на экран сообщения о том, что для продолжения работы пришлось эти данные изменить.

Для эффективной работы со свойством Number нужно знать, каким именно ошибкам соответствуют возвращаемые этим свойством номера. Из-за недостатка места я не могу представить здесь соответствующий список. В некоторых VBA-приложениях - к ним относятся и приложения Office 97 - информация об ошибках, встречающихся чаше всего, имеется в разделе Trappable Errors (Распознаваемые ошибки) справки по VBA. Этот раздел можно найти, напечатав trappableerrors в поле ввода на вкладке Предметный указатель в окне справки. В справочной системе Office 2000 подобного раздела мне найти не удалось.

Даже если ваш программный код не может обработать какую-то ошибку или если вы просто не хотите утруждать себя, вы все равно можете не допустить появления стандартного сообщения VBA об ошибке, использовав свойство Description (Описание) объекта Err.

Следующий фрагмент программного кода отображает исключительно вежливое сообщение об ошибке, частью которого является строка, предоставленная свойством Description:

strМоеСообщение = "С сожалением сообщаю Вам, что " _

& "в эту в целом замечательную программу все же " _

& "вкралась ошибка. Как сообщает наш надежный " _

& "источник (VBA), причиной беспокойства является "

MsgBox strМоеСообщение & Err.Description

Некоторые VBA-приложения предлагают свои объекты и функции, с помощью которых можно получить дополнительную информацию о специфических проблемах данного приложения. Например, Microsoft Access предлагает для этого специальный объект Error.

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

Если вы предпочтете продолжить выполнение текущей процедуры, поместите в обработчик ошибок оператор Resume. Оператор Resume имеет несколько вариантов.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стив Каммингс читать все книги автора по порядку

Стив Каммингс - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




VBA для чайников отзывы


Отзывы читателей о книге VBA для чайников, автор: Стив Каммингс. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x