А.Н.
Павлов. Высокоуровневые методы информатики и программирования
5.2. Создание приложения для
совместной работы
с табличным процессором Excel
Данные, которые
сосредотачиваются в обычном табличном процессоре Excel, часто удобно просматривать в
специальном приложении. Это позволяет осуществить операции выбора или отбора
необходимых сведений, а также использовать удобный интерфейс для пользователя.
Язык программирования Visual Basic,
позволяет объединить три функции: поиск информации в таблице Excel; отбор необходимой информации с
последующей ее обработкой, и создание собственного файла, который можно
использовать, как отдельный массив.
Последовательность
выполнения работы целесообразно рассмотреть поэтапно.
Этап 1. Подготовка
таблицы с данными на Excel.
Создадим таблицу на Excel и сохраним в виде файла Таблица1.xls, на рисунке 6 представлена
подготовленная таблица, которая будет базой данных для приложения на VB. Следует отметить две
особенности:
-
столбцы таблицы, будут представлены как элементы
данных, поэтому таблицу следует расположить с левого верхнего угла (с ячейки A1), заголовки столбцов
таблицы в базе данных будут определять имена однотипных элементов;
-
наименование базы данных содержится в названии
ярлыка, поэтому при подготовке данных, целесообразно присвоить имя ярлыку
странице, на которой находится таблица. Внешний вид таблицы, созданной в Excel, и сохраненной на
жестком диске под именем Таблица1.xls, показано на рис. 37.
Этап 2. Разработка
проекта приложения на Visual Basic.
Откроем
Visual
Basic и создадим
новый проект, воспользовавшись пиктограммой. На рис. 38 показан внешний вид
приложения, в котором использованы элементы управления для выполнения
определенных функций. Элементы Label1,
Label2, Label3, предназначены для
обозначения полей базы данных. Текстовые окна Text1, Text2, Text3, предназначены для отображения
содержимого базы данных. При желании можно провести коррекцию данных. Окно List1, необходимо для
формирования окончательной записи, которую можно будет отправить в файл.
Кнопки, предназначены для управления работой с приложением.
Элемент
Data используется для открытия базы данных,
поэтому следует придерживаться определенной последовательности при задании
этому элементу начальных свойств:
-
в проекте выделить объект;
-
в окне свойства (Properties) выбрать Connect, раскрыть список и подсоединить Excel 8.0;
-
свойству DataBaseName присвоить путь к базе Excel (Таблица1.xls);
-
свойству RecordSource присвоить имя базы данных
(БД-Сотрудники).
Рис. 38. Внешний вид проекта
Этап 3. Назначение
свойств объектам проекта.
Каждому элементу в виде
текстового окна, необходимо назначить свойства для связи с базой данных:
-
свойству DataSource присвоить имя элемента Data1;
-
свойству DataField – Фамилия
для окна Text1,
соответственно для следующих окон другие названия полей базы данных, которые
выбираются из списка.
Этап 4. Подготовка
программных кодов для обработки событий.
Следует подготовить программные коды для управления
приложением. Тут следует отметить то, что просмотр базы данных возможен без
разработки программных кодов и передачи данных куда-либо. В этом случае не
понадобятся и другие элементы на приложении, кроме окон для отображения данных
и элемента Data1.
В разработанном проекте использованы четыре кнопки для
работы, каждой из них назначены программы в виде процедур, обрабатывающие
событие нажатие на кнопку (Click).
Кнопка
с именем Command1
(ПЕРЕДАТЬ ЗАПИСЬ В ОКНО), предназначена для организации выбора из текстовых
окон Text1, Text2, Text3 значений атрибутов базы данных.
Непосредственно атрибуты базы данных назначены уже в свойстве DataField окна
проекта. Объединенные данные добавляются окно элемента ListBox
способом присоединения новых строк, для чего используется свойство AddItem элемента
с именем List1.
Кнопка
с именем Command3
(ОЧИСТИТЬ СПИСОК), введена для того, чтобы удалять сформированную запись, если
она по каким-либо причинам не подходит. В данном примере специально показано,
что нумерация имен кнопок может не соответствовать их истинному расположению на
проекте, свойство Clear для объекта ListBox позволяет очистить его содержимое.
Кнопка
с именем Command2
(СОХРАНИТЬ В ФАЙЛЕ), позволяет организовать передачу данных из объекта ListBox в
файл последовательного доступа. Для созданного приложения введена глобальная
переменная a, которая содержит только последнюю
запись из базы данных. Это сделано для того, что бы показать, как можно
накапливать строки с записями из базы данных в одном месте, а запоминать в
отдельном файле только последнюю строку. Следует напомнить, что в языке Visual Basic требуется указывать
абсолютный путь к файлу (полностью), поэтому в операторе Open такая запись довольно громоздкая.
Избежать жесткого указания пути к файлу можно только одним способом, необходимо
вводить диалоговое окно, в котором назначается путь к файлу, а затем эту
переменную передают оператору Open.
При открытии файла (в данном примере Zap1.doc)
даже если его не существует, система сама сформирует данное имя и отправит
данные в файл. В том случае, если файл уже создан, новые данные будут
добавляться в конец файла, это осуществляется благодаря использованному
ключевому слову Append
(для создания нового файла используется ключевое слово Output). При осуществлении чтения данных
из файла применяется только ключевое слово – Input. Для подтверждения, что запись в файл прошла успешно,
использовано всплывающее окно, вызывается окно функцией MsgBox(), окну в виде параметра
передается значение переменной a.
Кнопка
с именем Command4
(ЗАКОНЧИТЬ РАБОТУ), предназначена для скрытия приложения с экрана компьютера.
Перечень
программных кодов в виде листинга для приложения на VB, представлен ниже.
Листинг программных
кодов для работы с приложением
Dim a As Variant
Private Sub Command1_Click()
a = Text1.Text + " " + Text2.Text + " " + Text3.Text
List1.AddItem a
End Sub
Private Sub Command2_Click()
Open "C:\ПримерыVB\Элемент ActiveX\Общие данные\Zap1.doc" For Append
As #1
MsgBox a
Write #1, a
Close #1
End Sub
Private Sub Command3_Click()
List1.Clear
End Sub
Private Sub Command4_Click()
End
End Sub