- •Программирование в excel
- •Симферополь 2000
- •Факультет "Механизация сельского хозяйства" Программирование в excel
- •1. Основы программирования на vba
- •1.1. Создание, редактирование и запись программ
- •1.1.1. Запись макроса
- •1.1.2. Как найти макрос в проекте
- •1.1.3. Написание новой процедуры
- •Чем макрос отличается от процедуры
- •1.1.4. Процедуры типа Sub и Function
- •1.1.5. Закрытые и открытые процедуры
- •1.1.6. Использование значения, возвращаемого функцией
- •1.1.7. Выполнение процедуры Sub
- •1.1.8. Передача аргументов в процедуру
- •1.1.9. Именованные аргументы
- •1.1.10. Написание процедур для обработки событий
- •1.1.11. Где хранится код обработки события
- •1.1.12. Средства, ускоряющие написание программ
- •1.1.13. Как написать легкочитаемую программу
- •1.2. Переменные, константы и типы данных
- •1.2.1. Типы данных в Visual Basic
- •1.2.2. Объявление константы, переменной или массива
- •1.2.3. Объявление объектной переменной
- •1.2.4. Встроенные константы
- •1.3. Управляющие конструкции
- •1.3.1. Операторы ветвления
- •1.3.2. Операторы циклов
- •1.3.3. Вложение управляющих конструкций
- •1.3.4. Выход из циклов и процедур
- •1.4. Структура программы
- •2. Сортировка данных
- •2.1. Алгоритм сортировки обменами (алгоритм “пузырька”)
- •2.2. Алгоритм сортировки вставками
- •2.3. Алгоритм сортировки выбором элемента
- •2.4. Алгоритм быстрой сортировки (метод Хоора)
- •2.5. Алгоритм пирамиды (метод Уильямса-Флойда)
- •2.6. Учебные задачи по программированию сортировки данных
- •3. Работа vba с объектами Excel
- •3.1. Как получить справку по Visual Basic для Microsoft Excel
- •3.2. Объекты Microsoft Excel
- •3.3. Работа с объектом Application
- •3.4. Работа с объектом Workbook
- •3.4.1. Открытие рабочей книги
- •3.4.2. Закрытие рабочей книги
- •3.4.3. Создание и сохранение рабочей книги
- •3.5. Работа с объектом Range
- •3.6. Строковые ссылки в стиле а1 или имена диапазонов
- •3.6.1. Числовые индексы строк и колонок
- •3.6.2. Свойство Offset
- •3.6.3. Свойства CurrentRegion и UsedRange
- •3.6.4. Организация циклов для перебора ячеек диапазона
- •3.6.5. Применение свойства Address для отладки кода, работающего с объектом Range
- •3.7. Работа с событиями
- •3.7.1. Включение и отключение обработки событий
- •3.7.2. Использование событий, связанных с рабочими листами
- •3.7.3. События на уровне рабочего листа
- •3.7.4. События на уровне диаграммы
- •3.7.5. События на уровне рабочей книги
- •3.7.6. События на уровне приложения
- •3.7.7. Модули классов и события
- •4. Численные методы математики
- •4.1. Методы решения нелинейных уравнений
- •4.1.2. Метод деления отрезка пополам (метод дихотомии).
- •4.1.3. Метод Ньютона (касательных).
- •4.1.4. Метод хорд (секущих).
- •4.1.5. Метод итераций (метод последовательных приближений).
- •4.2.1. Теоретические сведения
- •4.2.2. Метод Крамера
- •4.2.3. Метод Гаусса
- •4.2.6. Метод Зейделя
- •4.3. Обработка экспериментальных данных
- •4.3.1. Задачи, которые возникают при обработке экспериментальных данных.
- •4.3.2. Интерполяция
- •4.3.2.1. Интерполяция функций
- •4.3.3.2. Определение параметров эмпирической формулы
- •4.4. Методы численного интегрирования
- •4.4.1. Метод трапеций
- •4.4.2. Метод Симпсона
- •4.4.3. Оценка точности формул численного интегрирования. Выбор шага интегриров-ания
- •4.4.3.1. Выбор шага интегрирования по оценке остаточного члена (ошибки)
- •4.4.3.2. Выбор шага интегрирования с помощью двойного пересчета
- •4.5.1. Теоретические сведения
- •4.5.2. Одноступенчатые методы
- •4.5.2.1. Решение с помощью рядов Тейлора
- •4.5.2.2 Метод Эйлера
- •4.5.2.3. Модифицированный метод Эйлера
- •4.5.2.4. Метод Эйлера-Коши
- •4.5.2.5 Метод Рунге-Кутта
- •4.5.3. Многоступенчатые методы
- •4.5.3.1. Методы прогноза и коррекции
- •4.6. Методы решения линейной краевой задачи для обыкновенных дифференциальных уравнений
- •4.6.1. Постановка задачи
- •4.6.2. Метод конечных разностей
- •4.6.3. Метод прогонки
- •4.6.4. Алгоритм решения краевой задачи методом прогонки.
1. Основы программирования на vba
Программирование на Visual Basic for Application (VBA) в простейшем варианте знакомства требует овладения тремя разделами, включающими в себя следующие темы:
1.1. Создание, редактирование и запись программ
1.1.1. Запись макроса 1.1.2. Как найти макрос в проекте 1.1.3. Написание новой процедуры 1.1.4. Процедуры типа Sub и Function 1.1.5. Закрытые и открытые процедуры 1.1.6. Использование значения, возвращаемого функцией 1.1.7. Выполнение процедуры Sub 1.1.8. Передача аргументов в процедуру 1.1.9. Именованные аргументы 1.1.10. Написание процедур для обработки событий 1.1.11. Где хранится код обработки события 1.1.12. Средства, ускоряющие написание программ 1.1.13. Как написать легкочитаемую программу 1.1.14. Модули классов
1.2. Переменные, константы и типы данных
1.2.1. Типы данных в Visual Basic 1.2.2. Объявление константы, переменной или массива 1.2.3. Объявление объектной переменной 1.2.4. Встроенные константы
1.3. Управляющие конструкции
1.3.1. Операторы ветвления
1.3.1.1. lf...Then 1.3.1.2. If. ..Then. ..Else 1.3.1.3. lf...Then...Elself 1.3.1.4. Select Case
1.3.2. Операторы циклов
1.3.2.1. Do...Loop 1.3.2.2. Do While...Loop 1.3.2.3. Do Until...Loop 1.3.2.4. Do ... Loop While 1.3.2.5. Do...Loop Until 1.3.2.6. For...Next 1.3.2.7. For Each ...Next
1.3.3. Вложение управляющих конструкций 1.3.4. Выход из циклов и процедур
1.4. Структура программы
1.1. Создание, редактирование и запись программ
1.1.1. Запись макроса
Каждый создаваемый в Excel документ (книга) имеет структуру или проект, на верхнем уровне которого находится сама Книга, внутри которой расположены Листы. При создании программ на VBA в электронных таблицах Excel создается еще одна структурная единица – Модуль. Внутри модуля размещаются макросы, содержащие собственно исходный текст (код) программы.
Excel дает исключительно полезную возможность научиться программировать на VBA путем автозаписи макроса. То есть действия, выполняемые через пользовательский интерфейс, можно перевести в программный код на Visual Basic путем записи макроса. Записанный таким образом простейший макрос послужит основой для создания более сложного макроса и поможет изучить объекты, свойства и методы Excel.
Чтобы записать макрос:
1. Сделайте видимой панель инструментов Visual Basic, для чего выберите из меню View (Вид) в окне приложения (а не Visual Basic Editor) команду Toolbars (Панели инструментов) и установите флажок в строке Visual Basic (если он уже не установлен).
2. На панели инструментов Visual Basic щелкните кнопку Record Macro (Записать макрос).
3. В диалоговом окне Record Macro (Запись макроса) в поле Macro Name (Имя макроса) замените имя макроса, предлагаемое по умолчанию, на нужное Вам и щелкните кнопку ОК.
В списке Store Macro In (Макрос доступен для)* укажите, где хранить новый макрос. Выберите - This Workbook (Эта книга).
4. Выполните операции, для которых Вы хотите сгенерировать код на Visual Basic.
5. На панели инструментов Stop Recording (Остановка записи) щелкните кнопку Stop Recording (Остановить запись).
Итак, макрос записан. Чтобы просмотреть его код, выберите из меню Тооls (Сервис) команду Macro (Макрос), а затем — строку Macros (Макросы). В диалоговом окне Macros (Макрос) выберите имя нужного макроса и щелкните кнопку Edit (Изменить). Откроется окно редактора Visual Basic (Visual Basic Editor), содержащее текст макроса. Для просмотра проекта всей книги следует выбрать из меню View (Вид) команду «Окно проекта».