Математика | ||||
Excel Visual Basic для приложений (серия «Без проблем!»): Пер. с англ.— М.: Восточная Книжная Компания, 1996. — 352 с: ил. ISBN 0-7897-0325-4 ISBN 5-89350-020-2 » Книга является учебником по программированию на языке Visual Basic for Applications. В основном она предназначена для пользователей Excel 7.0 для Windows 95, желающих расширить свои возможности при работе с электронными таблицами, но может быть полезна также всем, кто занимается разработкой различных приложений с использованием Visual Basic. | ||||
Краткое содержание Предисловие редактора русского издания...................................15 Введение..................................................................17 ЧАСТЬ I. Приступая к работе Глава 1. Введение в макросы..................................... .....25 Глава 9. Модульные листы. Макросы и VBA в модульных листах...........37 Глава 3. Совместное использование макрорекордера и редактора VBA... 53 Глава 4. Пишите свои функции рабочего листа...........................65 Глава 5. Даже небольшие знания по программированию приносят большую пользу.....................................79 ЧАСТЬ II. Программирование в VBA Глава 6. Справочная информация VBA...................................95 Глава 7. Соединение строк кода VBA...................................111 Глава 8. Процедуры VBA..............................................125 Глава 9. Переменные.................................................139 Глава 10. Способы управления последовательностью выполнения программ........................................153 Глава 11. Как VBA ссылается на объекты Excel...........................167 Глава 12. Обмен информацией между VBA и рабочими листами...........185 Глава 13. Работа со списками ..........................................195 Глава 14. Редактирование кода. Инструменты отладки в VBA.............209 ЧАСТЬ III. Изменяя «лицо» Excel Глава 15. Измените меню — программирования не требуется!............223 Глава 16. Использование VBA для работы с вашими меню................237 Глава 17. Панели инструментов.........................................249 Глава 18. Диалоговые окна.............................................265 Глава 1». Использование элементов управления диалогового окна.............................................277 Содержание Предисловие редактора русского издания........................... 15 Введение ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦!# В чем особенность этой книги?................................... 17 Как пользоваться этой книгой?................................... 18 Как организована эта книга..................................... 18 Часть I: Приступая к работе................................... 19 Часть II: Программирование в VBA...............,............... 19 Часть III: Изменяя лицо Excel.................................. 19 Часть IV: Специальные темы................................... 20 Специальные элементы оформления книги........................... 20 ЧАСТЬ I. Приступая к работе Глава 1» Введение в макросы....................................... 35 Как создаются макросы?....................................... 26 Макрорекордер .............................................. 26 Запись макроса............................................ 26 Использование записанных макросов............................. 28 Опции, доступные при записи макросов............................. 29 Имя и описание макроса...................................... 29 Два быстрых способа запуска макросов........................... 30 Выбор места для хранения макроса.............................. 31 Какой язык следует использовать?.............................. 31 Вы управляете местом действия.................................. 32 Макрос может обрабатывать выделенные ячейки..................... 32 ... или обрабатывать одни и те же ячейки каждый раз................ 33 Использование относительных ссылок............................ 34 Какое отношение имеют макросы к программированию и VBA?............ 34 Резюме.................................................... 35 Глава 9. Модульные листы. Макросы и VBA в модульных листах........ 37 Что такое модульный лист?..................................... 37 Создание макросов без макрорекордера............................. 38 Добавление и удаление модулей................................ 39 Ввод макроса в книгу........................................ 39 Запуск макроса............................................ 40 Ввод текста в модули.......................................... 41 Редактор VBA изменяет написание слов........................... 42 Синим цветом выделяются слова, специфические для VBA............. 42 Зеленый цвет — комментарии.................................. 42 Красный цвет — синтаксические ошибки.......................... 43 Длднные строки в VBA....................................... 44 Защита модуля от записи....................................... 44 Скрытие листа............................................. 45 Защита листа..............................................45 Как сделать программы доступными для всех рабочих книг.............45 Личная Рабочая книга Макросов (PERSONAL.XLS)...................45 Сохранение макросов в файле PERSONAL.XLS......................46 Запуск макросов из файла PERSONAL.XLS........................47 Редактирование файла PERSONAL.XLS...........................47 Настройка редактора..........................................48 Параметр автоотступа........................................48 Как обращаться с синтаксическими ошибками......................49 Установка шага табуляции....................................49 Установка шрифта и цвета....................................49 Панель инструментов Visual Basic.................................49 Использование панели Visual Basic в модуле........................50 Использование панели Visual Basic в обычном листе Excel..............50 Резюме....................................................51 Глава 3. Совместное использование макрорекордера и редактора VBA... 53 Используйте редактор VBA для организации своих макросов..............54 Объедините макросы в один или несколько модулей..................54 Удаление макросов..........................................55 Создание макроса, который сворачивает несколько макросов в один.........55 Изменение макросов, записанных макрорекордером....................56 Как мне найти макрос, который я записал?...................'.....57 Поиск макроса с помощью диалогового окна Макрос..................57 Добавление кода в макрос с помощью макрорекордера................58 Уборка после чересчур усердного макрорекордера....................60 Макрорекордер научит вас программировать.........................63 Резюме....................................................63 Глава 4. Пишите свои функции рабочего листа....................... 65 Что такое — определенные пользователем функции рабочего листа?.......66 Создание простой функции....................................66 Испытайте функцию AddUp...................................67 Различные способы доступа к функциям............................68 Как теперь сделать несколько действительно полезных функций?..........69 Введение в переменные.......................................70 f Некоторые операции........................................71 Построение вашего программного словаря: встроенные функции VBA. ..... 72 Как заставить несколько функций работать вместе.....................74 Резюме....................................................76 Глава 5. Даже небольшие знания по программированию приносят оольшую пользу. ..¦¦...¦.*........¦¦.««.....«..«..»..«.¦¦..7# Выполнение действия при соблюдении определенных условий.............80 Проверка: удовлетворяет ли число условию........................81 Другие способы сравнения чисел................................82 Сравнение текстовых переменных...............................83 Проверка нескольких условий: операции And, Or....................84 Как выполнить код, когда условие не выполняется: Else...............84 Написание программ, повторяющих некоторые шаги...................86 Выполнение некоторого кода определенное количество раз.............88 Повторение кода до тех пор, пока выполняется условие...............89 Что такое With, постоянно используемое макрорекордером?..............90 Резюме....................................................92 ЧАСТЬ II. Программирование в VIA Глава 6. Справочная информация VBA ...............................95 Установлены ли у вас файлы справки по Visual Basic?..................95 Поиск информации в справке по Excel..............................97 Как пользоваться содержанием.................................98 Поиск определенной темы или слова............................100 Разделы Справки содержат связи с дополнительной информацией.......101 Эй, да здесь — целое руководство для пользователя!.................101 Поиск по ключевым словам....................................102 Поиск ключевого слова, когда вы не знаете его название..............102 Как получить информацию о специфическом ключевом слове..........102 Как понять смысл встроенной языковой ссылки....................103 Нужен пример использования чего-либо?...........................105 Найдите примеры кода......................................105 Модифицируйте примеры для использования в своих программах.......106 Я потерялась в море объектов!..................................108 Резюме...................................................109 Глава 7. Соединение строк кода VBA............................... 111 Подача команд посредством операторов............................ 112 Встроенные операторы Excel.................................. 112 Ваши собственные программы тоже могут быть операторами........... 113 Используйте в программах выражения............................ 113 Выражения, вычисляющие значения............................ 114 Выражения, проверяющие на равенство True или False......-,......... 114 Использование возвращаемого функцией значения в качестве выражения ... 115 Конструируйте более длинные выражения с помощью операций.......... 116 Объединение числовых и текстовых выражений ....:............... 117 Создание выражений True/False............................... 117 Используйте знак = для присвоения значений и свойств установок........ 118 Почему некоторые переменные появляются по обе стороны от знака равенства?............................................... 119 Ошибка несовпадения типов!.................................. 119 Использование функций для присваивания значений................ 121 Для чего нужны блоки и отступы?............................... 121 Резюме................................................... 123 Глава8.Процедуры VBA ¦»«.¦¦.«¦¦««»«¦¦¦..¦¦¦....*.....¦¦¦¦.....« 125 Подпрограммы.............................................125 Какие программы являются макросами?.........................126 Подпрограммы, принимающие значения.........................126 Функции............-......................................128 Возможности функций шире, чем у пользовательских функций рабочего листа..................................................128 Функции могут иметь или не иметь аргументы.....................129 Как остановить процедуру до того, как она достигнет конца.............130 Как вызвать процедуру из другого кода?...........................131 Функции и подпрограммы используются по разному...................131 Деление программ на несколько небольших процедур................132 — Значения, передаваемые процедурам............................ 134 Использование встроенных функций Excel в вашем коде..............135 Указание типов данных.......................................135 Какого типа значения должна принимать ваша подпрограмма?.........136 Указывайте, значение какого типа возвращает функция..............137 Резюме...................................................137 I ЛВВа ™. Пш|ЭСМвНКЫ€ ¦.¦•¦¦¦¦*¦.¦¦¦¦¦¦¦¦¦¦.¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ 139 Когда создаются переменные...................................139 Переменные могут создаваться «на ходу».........................140 Объявляйте переменные заранее...............................141 Режим обязательного объявления переменных.....................143 Как указать тип переменной....................................144 Переменные для хранения чисел или дат.........................145 Переменные для хранения значений True и False...................145 Гибкое использование переменных: переменные типа Variant хранят данные любого типа........................................146 Разные процедуры и модули могут использовать одни и те же переменные. . . 147 Объявление переменных для использования в единственной процедуре.... 148 Переменные для использования в модуле.........................148 Переменные, общие для многих модулей.........................150 Как сделать так, чтобы локальная переменная запоминала свое значение? . . . 150 Резюме...................................................151 Глава 10. Способы управления последовательностью выполнения программ ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦.¦¦¦¦¦¦¦.¦¦¦ 1эз Принятие решения о выполнении некоторой части кода................ 154 Структура If/Then......................................... 154 Оператор Select Case позволяет выбирать из многих вариантов.......... 157 Существует несколько способов повторения кода..................... 158 For/Next повторяется определенное количество раз. . . .'.............. 159 Количество повторений цикла Do зависит от условий................ 159 Использование циклов при работе с объектами и массивами........... 162 Выход из цикла до его окончания.............................. 163 Одна управляющая структура может использоваться внутри другой........ 164 Резюме................................................... 165 Глава 11, Как VBA ссылается на объекты Excel..................... 167 Словарь объектов............................................167 Объекты в Excel — это то, с чем вы работаете......................168 Свойства — это атрибуты объекта..............................169 Методы оперируют объектами.................................169 Наборы — это группы объектов................................170 Указание объекта, с которым вы будете работать.....................170 Ссылайтесь на объекты, используя последовательность контейнеров......170 Объекты, активные или выбранные в данный момент................171 Выбор объекта из набора . .-..................................172 Другие способы выяснить имя объекта...........................173 Какие действия можно выполнять с объектами?......................174 Изменение свойств.........................................174 Чтение значения свойства....................................176 Использование методов...................................... 176 Работа с целыми наборами...................................179 Почему я получаю сообщение об ошибке, в .котором говорится, что метод завершен неверно?........................................... 180 Просмотр объектов (The Object Browser)............................ 181 Используйте Просмотр объектов для изучения объектов.............. 181 Используйте Просмотр объектов для поиска процедур................ 182 Вы можете также получать списки констант VBA и других полезных элементов............................................... 183 Резюме................................................... 183 Глава 12. Обмен информацией между VBA и рабочими листами..... 185 Как сообщить VBA, с какими ячейками я хочу работать?...............185 Ссылка на одиночную ячейку.................................186 Ссылка на несколько ячеек...................................188 Строки и столбцы.........................................190 Ячейки и диапазоны с именами................................191 Ссылка на положение диапазона относительно текущего выбора..........192 Что можно делать с ячейками, кроме изменения значений?.............193 Резюме...................................................194 Глава 13. Работа со списками ************************************* ¦™я Что такое массив?........................................... 195 Определение простого массива................................. 196 Присваивание значений элементам массива....................... 197 Ссылка на элемент массива................................... 198 Циклы и массивы прекрасно работают вместе...................... 199 Что, если я не знаю размера моего массива заранее?................... 200 Динамический массив не имеет фиксированного размера.............. 200 Как можно изменить размер массива после того, как он установлен?..... 201 Многомерные массивы........................................ 203 Создание многомерного массива............................... 204 Использование массивов для работы с диапазонами................. 204 Изменение размера многомерных массивов........................ 205 Резюме................................................... 206 Глава 14. Редактирование кода. Инструменты отладки в VBA......... 909 Знакомство с Окном отладки................................... 210 Панель Проверка (Immediate)................................... 211 Ввод команд в панель Проверка............................... 211 Вы можете изменять среду Excel из панели Проверка................ 212 Отображение значений...................................... 212 Проверяйте свой код построчно.................................. 214 Использование панели Проверка при пошаговом выполнении кода....... 215 Используйте команду Перешагнуть (Step Over), когда знаете, что процедура работает......................................... 216 Наблюдение за отдельным значением............................. 216 Задержитесь здесь! Приостановка выполнения процедуры............... 218 Установка точек прерывания................................. 219 Используйте команду Stop................................... 219 Резюме................................................... 220 -U4VID iii. изменяя «лицо» Excel Глава 15. Измените меню — программирования не требуется! ...... 993 Редактор меню.............................................223 Некоторые советы до того, как вы измените меню..................224 Где сохраняются изменения?..................................225 Мне необходимо добавить элемент к существующему меню..............226 Разделительные строки......................................228 Каскадное меню...........................................228 Ускоряющие клавиши.....................'.................230 Заставьте элемент меню что-нибудь делать........................230 Создание нового меню........................................231 Удаление и скрытие меню и элементов меню........................233 Удаление ваших собственных меню и элементов....................233 Как скрыть встроенные меню Excel.............................233 Помогите! Мне нужно вернуть мои первоначальные меню.............234 Резюме...................................................235 Глава 16. Использование VBA для работы с вашими меню........... 237 Что такого мне может дать VBA, чего не дает Редактор меню?...........237 Как VBA ссылается на меню и их содержимое?......................238 Добавление и удаление меню и их содержимого......................239 Добавление и удаление меню..................................240 Добавление и удаление элементов меню..........................242 Как заставить элемент меню что-либо выполнять...................242 Изменение вида элементов меню.................................243 Свойство Enabled..........................................243 Галочки................................................244 Когда и сколько раз мне изменять меню?..........................245 Переустановка строки меню..................................245 Как сделать изменения меню специфическими для единственной рабочей книги............................................246 Резюме...................................................247 Глава 17.Панели инструментов.................................... 349 Где сохраняются изменения панелей инструментов?...................250 Работа с существующими панелями инструментов....................250 Ссылка на панель инструментов...............................251 Отображение и скрытие панелей инструментов.....................252 Позиционирование и изменение размеров панелей инструментов........252 Воздействие на все панели инструментов.........................255 Работа с кнопками панелей инструментов..........................255 Настройка панелей инструментов без программирования..............256 Добавление кнопок с помощью VBA............................257 Запуск макросов кнопками панели инструментов...................259 Удаление кнопок с панели инструментов.........................260 Создавайте пользовательскую панель инструментов...................260 Закрепляйте панели инструментов за рабочей книгой................262 Удаление пользовательских панелей инструментов..................262 Восстановление встроенных панелей инструментов Excel................263 J Резюме........................,..........................264 j Глава 18» Диалоговые окна ....................................... 265 Окна сообщений............................................ 266 MsgBox как оператор позволяет отображать информацию............. 266 Какие опции имеются для MsgBox?............................. 267 Вы можете использовать функцию MsgBox, чтобы задавать пользователю вопросы...................................... 269 Окна ввода................................................ 273 Мои запросы слишком длинны, чтобы поместиться на одной строке........ 274 Отображение обычных диалоговых окон Excel в особых ситуациях........ 275 Резюме................................................... 275 Глава 19. Использование элементов управления диалогового окна.... 977 Установка элементов управления в рабочий лист..................... 277 Выделение, перемещение, изменение размеров и удаление элементов управления.............................................. 279 Имя и заголовок элемента управления........................... 280 Настройка элементов управления.............................. 280 Типы элементов управления.................................... 281 Командные кнопки........................................ 282 Флажки................................................ 283 Переключатели........................................... 284 Представление информации в виде списка........................ 285 Полосы прокрутки и счетчики................................ 286 Когда элемент будет выделен, что мне делать дальше?................. 287 Запуск кода при использовании элемента управления.................. 288 Защита листа.............................................. 289 Резюме................................................... 290 ЧАСТЬ IV. Специальные темы Глава 30. Создание и использование диалоговых окон.............. 995 Знакомство с диалоговыми листами.............................. 296 Изменение бланка диалогового окна............................ 297 Работа с элементами управления в диалоговых листах............... 298 Как указать элемент управления?.............................. 301 Отображение диалоговых окон.................................. 302 ... когда выделен элемент меню или нажата кнопка................. 303 ... когда пользователь запускает Excel........................... 303 Не забывайте инициализировать диалоговое окно................... 304 Использование элементов управления с VBA........................ 305 Пример использования флажков............................... 305 Пример использования полей редактирования..................... 306 Резюме................................................... 308 Глава 91. Объедините свою программу с Excel...................... 309 Что такое надстройка......................................... 310 Зачем мне может понадобиться создать надстройку?................. 311 Создание простой надстройки................................. 311 Установка существующей надстройки........................... 313 Удаление надстройки....................................... 314 Изменение надстроек....................................... 315 Использование кода VBA для работы с надстройками.................. 315 Ссылка на определенную надстройку............................ 315 Добавление надстроек к Excel с использованием VBA ..................316 Резюме...................................................317 Глава 22. Автоматический запуск кода............................. 319 Автоматическое открытие рабочей книги...........................320 Процедуры, выполняющиеся, когда открывается или закрывается рабочая книга.................................320 Процедуры, которые запускаются, когда происходит некоторое событие.....322 Как сделать, чтобы Excel ожидал какое-либо событие................323 Как можно отключить обнаружение событий?.....................327 Резюме...................................................328 Глава 23. Разработка дружественного интерфейса.................339 Защита исходного кода....................................... 330 Полностью скрытые листы................................... 330 Могу я сделать так, чтобы казалось, что Excel отсутствует?............ 331 ,, Берегите свои программы от разрушения........................... 331 ' Что такое «ошибка времени исполнения»?........................ 331 Не все ошибки могут быть предотвращены........................ 333 Перехват ошибок.......................................... 333 Резюме................................................... 338 сртветы на вопросы ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦•¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ т Справочный указатель» ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ 349 > Среда Excel и VBA...........................................349 Макросы..................................................349 Функции и процедуры........................................349 Объекты, свойства и методы...................................350 Меню, панели инструментов и диалоговые окна .....................350 Сообщения об ошибках.......................................351 Предисловие редактора русского издания Книга Элизабет Бунин Excel Visual Basic посвящена одной из наиболее интересных и перспективных систем разработки приложений для Windows, входящей в состав самой мощной программы электронных таблиц. Несмотря на все многообразие средств, которые получают пользователи, приобретая Excel, рано или поздно даже самые неискушенные из них начинают понимать, что им чего-то не хватает. Появляются задачи, которые хочется перепоручить компьютеру, знать бы только, как. С этого начинается знакомство с макросами и макрорекодером, которое на какое-то время снимает часть проблем. По мере накопления пользователем опыта появляются вещи, которыми хотят пользоваться другие. Возникают вопросы защиты информации, легкости понимания работы программных продуктов, интерфейса, контроля возникающих ошибок (!) и т.д. Так появляется необходимость сначала править созданные рекодером макросы, а затем писать программы вручную с использованием все большего количества возможностей VBA. Наконец, вершиной программирования становятся приложения, в которых Excel используется как простой и скрытый вычислитель и хранилище данных, а работающий с этими приложениями пользователь вообще ничего не слышал об электронных таблицах. Ему, например, просто нужно быстро создать годовой финансовый отчет небольшой фирмы, данные для которого ежемесячно поступали по компьютерной сети из различных филиалов. Так постепенно, шаг за шагом, автор книги намечает проблемы и раскрывает секреты их решения. Стиль диалога, несложные примеры, стремление не перегружать изложение не всем известными терминами (которые, впрочем, все равно приходится вводить), все это создает впечатление, что книга предназначена для не очень подготовленных пользователей. Действительно, иногда кажется, что объяснению несложного кода уделяется слишком много внимания. Здесь, видимо, более продвинутый пользователь (есть теперь и такой термин) может просто пропустить текст под. пометкой «Код», отдавая дань уважения составителю такого понятного кода. Следует отметить, что и по мере усложнения материала автор не изменила принципу написания коротких программ. В книге охвачены практически все вопросы программирования на VBA. Дополнить ее можно было бы разве что справочной системой. К сожалению, этого нельзя сделать с помощью справочной системы локализованной версии Excel. По непонятным причинам она является далеко не полной. 'Книга не является справочником. Это — учебник. Очень удобный. Цена: 300руб. |
||||