- •В.П.Обоскалов
- •Предисловие
- •Excel. Теоретические аспекты
- •Основные понятия
- •Основные термины
- •Работа с объектами
- •Функциональные клавиши
- •Указатель мыши
- •Формулы. Имена ячеек. Функции
- •Диаграммы
- •Функции списка
- •Формы данных
- •Фильтры
- •Автофильтр
- •Расширенный фильтр
- •Промежуточные итоги
- •Сводные таблицы
- •Консолидация данных
- •Нелинейные уравнения. Оптимизационные задачи
- •Поиск решения
- •Подбор параметра
- •Проектирование вычислений с помощью таблицы подстановки
- •Внешняя среда
- •Экспорт и импорт данных
- •Связь с базами данных
- •Вызов программы ms Query
- •Мастер запросов
- •Макросы
- •Запись макроса
- •Относительные ссылки
- •Выполнение макроса
- •Подключение макроса к объектам Назначение сочетания клавиш для запуска записанного ранее макроса
- •Назначение макроса кнопке или графическому объекту
- •Текст макроса
- •Excel. Лабораторный практикум
- •Начальное знакомство
- •Выделение блоков
- •Прозрачность ячеек. Перемещение данных. Копирование
- •Относительная и абсолютная адресация
- •Заполнение таблицы. Формулы. Относительная адресация. Суммирование
- •Абсолютная адресация. Имена ячеек
- •Форматирование таблицы
- •Вставка и удаление строк и столбцов
- •Форматирование ячеек
- •Форматирование столбцов и строк
- •Сетка. Показ формул
- •Автозаполнение. Списки
- •Автозаполнение
- •Диаграммы
- •Диаграмма. Общий случай
- •Гистограмма и круговая диаграмма
- •Графики функций
- •Работа с массивами данных
- •Подбор параметра. Поиск решения
- •Подбор параметра
- •Поиск Решения
- •Транспортная задача
- •Функции списка
- •Сортировка
- •Формы данных
- •Вычисление итогов
- •Консолидация данных
- •Сводная таблица
- •Внешняя среда
- •Экспорт и импорт данных. Связь документов
- •Процедуры пользователя
- •Диалоговые окна
- •UserForm
- •Решение инженерных задач наExcel
- •Проектирование эт
- •Основные функции
- •Суммирование
- •Примеры
- •Функции даты
- •Формульные расчеты
- •Тип оборудования
- •Самостоятельная работа
- •Самостоятельная работа
- •Коэффициенты, характеризующие график нагрузки
- •Проектирование таблицы.
- •Проектирование таблицы
- •Самостоятельная работа
- •Температурный режим трансформатора
- •Математический метод
- •Самостоятельная работа
- •Ремонтная ведомость Самостоятельная работа
- •Работа с матрицами
- •Расчет сети постоянного тока
- •Самостоятельная работа
- •Расчет токов трехфазного короткого замыкания
- •Метод z-матрицы
- •Эквивалентирование сети
- •Расчет токов кз по модели сети постоянного тока
- •Оптимизационные задачи
- •Решение систем нелинейных уравнений
- •Самостоятельная работа
- •Оптимальное распределение мощности нагрузки между параллельно работающими агрегатами
- •Линейное программирование
- •Самостоятельная работа
- •Двойственная задача линейного программирования
- •Самостоятельная работа
- •Работа с комплексными числами
- •Самостоятельная работа
- •Прогнозирование нагрузок
- •Метод наименьших квадратов
- •Самостоятельная работа
- •Метод скользящего среднего
- •Линейный тренд
- •Самостоятельная работа
- •Вероятность и статистика
- •Функции расчета вероятностных параметров
- •Математическое ожидание
- •Дисперсия
- •Корреляционный момент
- •Коэффициент корреляции
- •Гистограммы
- •Нормальное распределение
- •Расчет вероятностного режима электрической сети
- •Самостоятельная работа
- •Самостоятельная работа
- •Гистограмма случайной величины
- •Самостоятельная работа
- •Регрессия
- •Дополнительная регрессионая статистика
- •Простая линейная регрессия
- •Самостоятельная работа
- •Использование f-статистики
- •Вычисление t-статистики
- •Объектное программирование. Visual Basic
- •Основные понятия
- •Основные методы
- •МетодыRange, Cells, Offset
- •Самостоятельная работа
- •Методы и свойства активности объекта
- •Методы активности
- •Свойства, характеризующие активность
- •Макрорекордер
- •Самостоятельная работа
- •Свойства, характеризующие содержимое
- •Самостоятельная работа
- •Основные элементы языка
- •Общие сведения и структура программных модулей
- •Самостоятельная работа
- •Типы данных и переменные
- •Оператор Dim
- •Массивы
- •Пользовательские типы данных. Структуры
- •Динамическое перераспределение памяти
- •Константы
- •Видимость переменных и констант
- •Операторы присваивания
- •Математические и строковые операции
- •Процедуры
- •Вызов процедуры
- •Самостоятельная работа
- •Использование необязательных аргументов
- •Самостоятельная работа
- •Функции
- •Передача массива
- •Ссылки на внешние библиотеки
- •1. Скалярное произведение векторов (столбцы Excel) разной размерности
- •2. Поэлементное произведение массивов
- •Функции Application
- •Операторы принятия решения
- •ОператорIf
- •Блочная структура if
- •Многоблочная структура if
- •Select Case
- •Безусловный переход
- •Циклы объектного типа
- •Пример двойного цикла
- •Передача массива данных в таблицу
- •Коррекция блока ячеек таблицы
- •Ввод и вывод данных
- •Чтение и запись последовательных файлов
- •Диалоговые функции
- •MsgBox()
- •Самостоятельная работа
- •Функция InputBox()
- •Ввод названия файла
- •Самостоятельная работа
- •Диалоговые окна Excel
- •Самостоятельная работа
- •Диалоговые окна пользователя
- •Элементы управления
- •Командная кнопка (CommandButton)
- •Самостоятельная работа
- •Надпись (Label)
- •Самостоятельная работа
- •Окно редактирования (TextBox)
- •Окно списка (ListBox)
- •Самостоятельная работа
- •Выпадающее окно (ComboBox)
- •Групповое окно (Frame)
- •Контрольный индикатор (CheckBox)
- •Кнопка выбора (OptionButton)
- •Заполнение массива случайными числами
- •Линейная интерполяция
- •Самостоятельная работа
- •Оптимальное распределение нагрузки
- •Самостоятельная работа
- •Функции комплексных чисел
- •Самостоятельная работа
- •Обращение комплексной матрицы
- •Самостоятельная работа
- •Решение систем дифференциальных уравнений
- •' Модуль "Ввод исходных данных из таблицы Excel"
- •Перенумерация узлов
- •Самостоятельная работа
- •Матрица инциденций по узлам
- •Индивидуальные задания
- •Библиографический список
- •620002, Екатеринбург, ул. Мира,19
- •620002, Екатеринбург, ул. Мира,19 в.П.Обоскалов
Диалоговые функции
Современный стиль программирования ориентирован на дружеский интерфейс, позволяющий уточнить процесс обработки данных. В профессионально разработанных программах пользовательский интерфейс занимает около 90% объема кода и только 10% используется для обработки данных. Наряду со стандартными приемами передачи данных (через таблицы, файлы и др.) здесь важное место отводится диалогу.
MsgBox()
Для передачи пользователю некоторого текстового сообщения и получения простых ответов типа "Да" - "Нет" используется функция MsgBox(). Эта функция выводит на экран диалоговое окно, содержащее сообщение и группу кнопок, устанавливает режим ожидания нажатия кнопки пользователем, а затем возвращает значение целого типа, указывающее, какая кнопка была нажата. В простом представлении (без справки) функция имеет следующий синтаксис: MsgBox(prompt[, buttons] [, title]).
Таблица 4.36
Константа |
Значение |
Описание |
Группа 1. Число и тип кнопок | ||
VbOKOnly |
0 |
Отображается только кнопка "OK". |
VbOKCancel |
1 |
Отображаются кнопки "OK" и "Отмена" (Cancel). |
VbAbortRetryIgnore |
2 |
Отображаются кнопки "Прервать" (Abort), "Повторить" (Retry) и "Пропустить" (Ignore). |
VbYesNoCancel |
3 |
Отображаются кнопки "Да", "Нет" и "Отмена" (Cancel). |
VbYesNo |
4 |
Отображаются кнопки "Да" (Yes) и "Нет" (No). |
VbRetryCancel |
5 |
Отображаются кнопки "Повторить" (Retry) и "Отмена" |
Группа 2. Тип значка | ||
VbCritical |
16 |
Используется значок "Критическое сообщение". |
VbQuestion |
32 |
Используется значок "Предупреждающий запрос". |
VbExclamation |
48 |
Используется значок "Предупреждение". |
VbInformation |
64 |
Используется значок "Информационное сообщение". |
Группа 3. Основная кнопка | ||
VbDefaultButton1 |
0 |
Основной является первая кнопка. |
VbDefaultButton2 |
256 |
Основной является вторая кнопка. |
VbDefaultButton3 |
512 |
Основной является третья кнопка. |
VbDefaultButton4 |
768 |
Основной является четвертая кнопка. |
Группа 4. Модальность окна ()МО) сообщения | ||
VbApplicationModal |
0 |
МО на уровне приложения: для работы с текущим приложением, необходимо ответить на сообщение. |
VbSystemModal |
4096 |
МО на уровне системы: приложения недоступны до тех пор, пока пользователь не ответит на данное сообщение. |
Параметры
Prompt (обязательный параметр) - строковое выражение, отображаемое как сообщение в диалоговом окне. Максимальная длина текста составляет приблизительно 1024 символов и зависит от ширины используемых символов. Текст может состоять из нескольких физических строк.
buttons (кнопки) - числовой код, позволяющий определить совокупность кнопок и их статус. По умолчанию buttons=0 (одна кнопка "ОК"). В табл. 4.4 перечислены допустимые значения этого аргумента. При определении комплексного значения аргумента buttons следует суммировать значения кнопок, но не более одного из каждой группы.
title - заголовок диалогового окна. Если этот аргумент опущен, в строку заголовка помещается имя приложения.
Примечание. Приведенные в таблице константы определены в языке Visual Basic. Использование имен этих констант вместо их значений допускается в любом месте программы.
Возвращаемые функцией значения приведены в табл. 4.5.
Дополнительные сведения. Если окно диалога содержит кнопку "Отмена" (Cancel), нажатие клавиши ESC эквивалентно нажатию этой кнопки.
Пример
Программный модуль |
Комментарий |
Public Sub cc() |
|
Dim dd As Integer, ddd As Integer |
|
dd = MsgBox(Title:="Веселый диалог", _ |
"_" - Перенос оператора |
Prompt:="Привет старина! Хочешь поговорить?", _ |
Подстановка параметров |
Buttons:=4) |
- в любом порядке |
Select Case dd |
Пример использования |
Case vbYes |
оператора Select Case |
ddd = MsgBox(prompt:="Я рад, но говорить пока не о чем", _ |
Нажата кнопка "Да" |
Title:="Веселый диалог") |
|
Case vbNo |
|
ddd = MsgBox(prompt:="Не хочешь? Ну, как хочешь!", |
Нажата кнопка "Нет" |
_ Title:="Веселый диалог") |
|
End Select |
|
End Sub |
|
Рис.4.74. Веселый диалог
Результаты диалога представлены на рис. 4.4. Первая панель - результат первого вызова функции . Появление второй или третьей панели зависит от того, какая кнопка нажата - "Да" или "Нет".
Таблица 4.37
Константа |
Значение |
Нажатая кнопка |
VbCancel |
2 |
Отмена (Cancel) |
VbAbort |
3 |
Прервать (Abort) |
VbRetry |
4 |
Повторить (Retry) |
VbIgnore |
5 |
Пропустить (Ignore) |
VbYes |
6 |
Да (Yes) |
VbNo |
7 |
Нет (No) |