
- •Н.Г.Куфтинова программирование в среде vba
- •Н.Г.Куфтинова программирование в среде vba
- •Оглавление
- •Введение
- •Разработка алгоритма. Блок-схема. Структуры алгоритмов
- •Понятие алгоритма. Структуры алгоритмов
- •3. Базовая структура цикл.
- •Контрольные вопросы
- •Представление данных в памяти,типы данных, идентификаторы, переменные, массивы
- •Программный способ записи алгоритмов
- •Представление данных в памяти
- •Типы данных
- •Идентификаторы, переменные, массивы
- •Операции, выражения, операторы
- •Контрольные вопросы
- •Структура программ на vba, операторы описания, присваивания
- •Структура программ на vba
- •Операторы описания
- •Oператоры присваивания
- •Контрольные вопросы
- •Понятие макроса, создание, отладка программы
- •Понятие макроса. Создание макроса
- •4.2. Отладка, использование среды для отладки программ
- •Средства отладки
- •Обработка ошибок выполнения
- •Перехват ошибок
- •4.6. Общие сведения о перехвате ошибок
- •Контрольные вопросы
- •Управляющие структуры vba
- •Конструкция If . . . Then
- •Конструкция If . . . Then . . . Else
- •Конструкция Select Case
- •Контрольные вопросы
- •Операторы цикла. Вложенные циклы
- •Операторы цикла
- •Вложенные циклы
- •Контрольные вопросы
- •Символьные данные. Операции и функции для работы с символьными данными
- •Символьные данные
- •Операции и функции для работы с символьным данными
- •Булевские вектора и операции для работы с ними
- •Контрольные вопросы
- •Подпрограмма-процедура
- •Общие процедуры
- •Создание новых процедур
- •Просмотр существующих процедур
- •9.4. Вызов процедур Sub
- •Процедуры в стандартных модулях
- •Подпрограмма-функция
- •10.1 Вызов процедур Function
- •10.2. Механизмы передачи параметров. Типы данных параметров. Передача параметров по значению
- •10.3. Передача параметров по ссылке
- •10.4. Неизвестное число параметров
- •10.5. Рекурсия
- •Контрольные вопросы
- •Использование объектов, их свойства и методы. Формы
- •Работа с объектами
- •Происхождение объектов. Основы работы с объектами
- •Установка значений свойств
- •Получение значений свойств
- •Использование методов в коде
- •Взаимосвязь объектов
- •Применение свойств и методов к членам наборов
- •Общие наборы в vba
- •Разработка формы. События и методы формы
- •Связь между объектами. Создание объектов. Использование и объявление переменных для объектов
- •Формы как объекты. Объект fso
- •Контрольные вопросы
- •12. Элементы управления в приложениях vba
- •12.1. Кнопки управления
- •12.2. Метки
- •12.3. Текстовые поля
- •12.4. Работа с текстом в текстовом поле
- •12.5. Флажки
- •12.6. Создание групп переключателей. Выбор переключателей
- •12.7. Комбинированные окна и списки
- •12.8. Полосы прокрутки как устройства ввода
- •12.9. Графическое окно в качестве контейнера
- •12.10. Элемент управления Image
- •12.11. Другие элементы управления
- •Контрольные вопросы
- •Литература
- •Приложение 1
- •2. Математические функции
- •4. Операторы циклов
- •Часть1. Обработка одномерного массива
- •Часть 2. Обработка двумерного массива
- •Приложение 2
12.7. Комбинированные окна и списки
Списки и комбинированные окна предоставляют пользователю список возможных вариантов выбора, по умолчанию отображаемых вертикально в одну колонку, хотя возможно отображение и в несколько колонок. Если число элементов превышает возможности отображения в комбинированном окне или списке, автоматически появляется полоса прокрутки. Пользователь в этом случае может просматривать список элементов, прокручивая его вверх и вниз или влево и вправо.
Комбинированное окно совмещает возможности списка и текстового поля. В этом элементе управления пользователь может производить выбор либо вводом текста в поле ввода комбинированного списка, либо выбором элемента из его списка.
По сравнению с другими элементами управления, которые содержат одно значение, например, значение свойства caption метки или значение свойства Text текстового поля, списки и комбинированные окна содержат набор значений. Для них существуют встроенные методы добавления, удаления и получения значений из этого набора во время выполнения. Программный код для добавления нескольких элементов в список с именем Listi мог бы выглядеть следующим образом:
Listl.Addltem "Paris" Listl.AddItem "New York" Listl.AddICem "San Francisco"
Списки и комбинированные окна - это эффективный способ представления большого числа вариантов выбора для пользователя в ограниченном пространстве на форме.
12.8. Полосы прокрутки как устройства ввода
В основном полосы прокрутки используются в текстовых полях или окнах, но иногда их применяют в качестве устройств ввода. Полосы прокрутки показывают текущую позицию на масштабной линейке, поэтому их можно использовать самостоятельно для управления вводом в программу, например, регулировать цветовую палитру в картинке или уровень громкости. Элементы управления HScrollBar (Горизонтальная полоса прокрутки) и VScrollBar (Вертикальная полоса прокрутки) функционируют независимо от других элементов управления и имеют собственные наборы событий, свойств и методов. Элементы управления "Полоса прокрутки" - это не то же самое, что встроенные полосы прокрутки, присоединяемые к текстовым полям, спискам, комбинированным окнам.
В состав VBA включен объект для работу с графикой: image (Изображение).
Объекты Form также имеют свойство Picture, которое можно установить для отображения картинки непосредственно в виде фона (заднего плана) формы.
Для отображения или замены картинки во время выполнения следует установить значение свойства picture при помощи функции LoadPicture. Ей передается только имя (с необязательным путем) файла картинки, и далее эта функция управляет деталями загрузки и отображения картинки:
picMain.Picture = LoadPicture("VAHGOSH.BMP")
Объект picture имеет свойство AutoSize, которое, если его значение равно True, автоматически изменяет размеры окна вывода картинки, чтобы оно соответствовало размерам выводимой картинки. Следует быть очень внимательным при разработке формы, если ее свойство AutoSize равно True. Размеры окна вывода картинки изменяются независимо от других элементов управления на форме. В результате картинка может, например, закрыть другие элементы управления. Во время разработки следует протестировать вывод каждой картинки, которую предполагается использовать в приложении.