Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая / Источники / excel_2010_professionalnoe_programmirovanie_na_vba_RuLit_Me_412629.pdf
Скачиваний:
4
Добавлен:
27.09.2025
Размер:
22.97 Mб
Скачать

426

Часть IV. Пользовательские формы

P riv a te

Sub C lo s e B u tto n _ C lic k ()

U nload U serForm l

End Sub

Эта процедура, которая вызывается после щелчка на кнопке Отмена, выгружает из памяти форму UserForml.

5.Нажмите комбинацию клавиш <Shift+F7> для повторного отображения формы UserForml (либо щелкните на значке View Object (Просмотр объекта) в верх­ ней части окна Project Explorer (Просмотр объектов)).

6.Дважды щелкните на кнопке ОК и введите код следующей процедуры (это код

обработчика событий для события Click объекта OKButton).

P riv a te

Sub O K B u tto n _ C lic k ()

Dim

NextRow As Long

'А ктиви зац ия листа

S h e e ts ( "Л и с т 1 " ) . A c t i v a t e

'

Определение следующей п усто й с тр о ки

 

NextRow = _

 

A p p lic a tio n .W o rk s h e e tF u n c tio n .C o u n tA (R a n g e ( " А :А " ) ) + 1

1

Передача имени

 

C ells(N e xtR ow , 1) = TextName. T ext

'Передача пола

I f

O ptionM ale Then C ells(N e xtR ow , 2)

=

"Мужчина"

I f

O ptionFem ale

Then

C ells(N e xtR ow ,

2)

=

"Женщина"

I f

OptionUnknown

Then

C ells(N e xtR ow ,

2)

=

"Д р у го е "

'О чистка элементов управления для следующих записей

TextName. T e xt

=

""

OptionUnknown

=

True

TextName. SetFocus

End Sub

7.Перейдите в окно Excel и щелкните на кнопке еще раз, чтобы отобразить пользо­ вательское диалоговое окно. Запустите процедуру повторно.

Элементы управления диалогового окна должны функционировать правильно. Теперь с помощью пользовательской формы можно добавлять новые имена в ра­ бочий лист.

Процедура OKButton_Click работает следующим образом. Сначала она проверяет, активен ли лист Л и с т 1 . После этого запускается функция Excel СЧЁТЗ (COUNTA) для определения следующей пустой ячейки в столбце А. Затем текст из текстового поля Text Box передается в определенную ячейку столбца А. С помощью операторов If оп­ ределяется выделенный элемент управления OptionButton, что обеспечивает запись соответствующего текста в столбец В (Мужчина, Женщина, Другое). Наконец, диало­ говое окно перезапускается (чтобы обеспечить возможность введения следующей запи­ си). Заметим, что щелчок на кнопке ОК не приведет к закрытию диалогового окна. Для завершения ввода данных (и выгрузки пользовательского диалогового окна) щелкните на кнопке Отмена.

Проверка правильности введенных данных

Приведенному в этом разделе примеру следует уделить особое внимание. Возможно, вы заметили, что не устранена небольшая проблема — отсутствует проверка введенных