Сделай Сам Свою Работу на 5

Программа на группу элементов “Вид охраны” OptionButtion ( переключатель)





Комплексная работа

Постановка задачи

В этой работе разработан сложный документ – электронная смета. Электронная смета состоит из нескольких листов и имеет в своей основе пользовательский диалог и различные элементы управления. Такая смета предназначена для оперативного расчета стоимости услуги перевозки, в зависимости от пожеланий каждого конкретного клиента.

В фирму «Перевозчик», организующую перевозки, приходят разные клиенты со всевозможными запросами. В электронной смете представитель фирмы со слов клиента выбирает только то, что ему необходимо, а смета и итоговая цена формируются автоматически. Все общение ведется через специально разработанную диалоговую форму, перечень судов и расценка на них введены заранее.

Технология работы

  1. Переименуем листы в «Тип_судна», «Тип_груза» и «Смета».
  2. На листе «Тип судна» наберем:

 

Имя Стоимость
Сухогруз
Балкер
Танкер
Контейнеровоз
  1. На листе «Тип_груза» наберем:

 

Имя Стоимость
Контейнер
Наливные
Навалочные
Скоропортящиеся

 

  1. Для создания в диалоговой форме полей со списком, присвоим диапазону ячеек имена:
  • На листе “Тип_груза” диапазону ячеек $A$2:$A$5 присвоим имена “Тип_груза”
  • На листе “Тип_судна” диапазону ячеек $A$2:$A$6 присвоим имена “Тип_судна”

Имена для диапазона ячеек присваиваются с помощью команды Вставка®Имя® Присвоить



 

Пользовательская форма

При создании пользовательской формы используются различные элементы управления, такие как:

  • CheckBox (флажки);
  • TextBox (текстовые поля для ввода);
  • OptionButtion ( переключатель);
  • CommandButton (кнопка);
  • ComboBox (поле со списком);
  • Label (надпись)

 

Теперь распишем программы на элементы управления, которые использовались в пользовательской форме

 

Программа на кнопку “ОК”

Private Sub CommandButton1_Click()

REM Объявления переменных

Dim строка As Integer

Dim n As Integer, p As Integer, o As Integer

Dim pozd As String

Dim podarok As String

Dim stpozd As String

Dim stconcert As String

Dim concert As String

Dim predoplata As String

Dim predoplata1 As String

Dim klient As String

Dim klient1 As String

REM Занесение в переменные содержимого элементов управления ПФ

With UserForm1

stpozd = .Label3.Caption

pozd = ComboBox1.Text

stpodarok = .Label4.Caption



podarok = ComboBox2.Text

stconcert = .Label12.Caption

If OptionButton1.Value = True Then concert = "Охрана заказана"

If OptionButton2.Value = True Then concert = "Охрана стандартная"

If OptionButton3.Value = True Then concert = "Охрана супер"

predoplata = .Label11.Caption

If CheckBox1 = False Then predoplata1 = "Оплата по факту" Else predoplata1 = "Предоплата(скидка)"

klient = .Label13.Caption

If CheckBox2 = False Then klient1 = "Клиент впервые" Else klient1 = "Постоянный клиент(скидка)"

End With

REM Перенос содержимого переменных на лист “Смета”

With Sheets("Смета")

.Cells(7, 1) = pozd

.Cells(7, 2) = stpozd

.Cells(8, 1) = podarok

.Cells(8, 2) = stpodarok

.Cells(9, 1) = concert

.Cells(9, 2) = stconcert

.Cells(10, 1) = predoplata1

.Cells(10, 2) = Val(predoplata)

.Cells(11, 1) = klient1

.Cells(11, 2) = Val(klient)

.Cells(12, 1) = "Стоимость заказа"

If CheckBox1 = False And CheckBox2 = False Then

.Cells(12, 2) = Val(UserForm1.Label10.Caption)

Else

.Cells(12, 2) = Val(UserForm1.Label16.Caption)

End If

End With

End

End Sub

 

Программа на кнопку «Отмена»

Private Sub CommandButton2_Click()

End

End Sub

 

Программа на кнопку «Новый заказ»

Private Sub CommandButton3_Click()

OptionButton1.Value = False

OptionButton2.Value = False

OptionButton3.Value = False

CheckBox1 = False

CheckBox2 = False

ComboBox1 = ""

ComboBox2 = ""

Label3.Caption = ""

Label4.Caption = ""

Label13.Caption = ""

Label11.Caption = ""

Label12.Caption = ""

Label10.Caption = ""

Label16.Caption = ""

End Sub

 

Программа на элемент управления поля со списком “Тип_судна”

Private Sub ComboBox1_Change()

Dim pozd As String

pozd = UserForm1.ComboBox1.Text

If pozd <> "" Then

With Sheets("Тип_судна")

Set b = .Range("A2:A6").Find(pozd, , xlValues, xlWhole, xlByColumns, xlNext)

ad = b.Address

r = b.Row

st = .Cells(r, 2)

UserForm1.Label3.Caption = st

End With

End If

UserForm1.Label10.Caption = Val(st) + Val(st1) + Val(st2)

End Sub

 

Программа на элемент управления поля со списком “Тип_груза”

Private Sub ComboBox2_Change()

Dim pod As String

pod = UserForm1.ComboBox2.Text

If pod <> "" Then

With Sheets("Тип_груза")



Set b = .Range("A2:A5").Find(pod, , xlValues, xlWhole, xlByColumns, xlNext)

ad = b.Address

r = b.Row

st1 = .Cells(r, 2)

UserForm1.Label4.Caption = st1

End With

End If

UserForm1.Label10.Caption = Val(st) + Val(st1) + Val(st2)

End Sub

 

Программа на группу элементов “Вид охраны” OptionButtion ( переключатель)

 

Программа на переключатель “Нет”

Private Sub OptionButton1_Click()

If OptionButton1.Value = True Then

st2 = 0

Label12.Caption = st2

Label10.Caption = Val(st) + Val(st1) + Val(st2)

End If

End Sub

 

Программа на переключатель “Стандартная”

Private Sub OptionButton2_Click()

If OptionButton2.Value = True Then

st2 = 3000

Label12.Caption = st2

Label10.Caption = Val(st) + Val(st1) + Val(st2)

End If

End Sub

 

Программа на переключатель “Супер”

Private Sub OptionButton3_Click()

If OptionButton3.Value = True Then

st2 = 5000

Label12.Caption = st2

Label10.Caption = Val(st) + Val(st1) + Val(st2)

End If

End Sub

 

Программа на флажок “Предоплата скидка 10%”

Private Sub CheckBox1_Click()

If CheckBox1 = True Then

Label11.Caption = 0.1 * Label10.Caption

Label16.Caption = Label10.Caption - Label11.Caption

Else

Label11.Caption = ""

Label16.Caption = Label10.Caption

End If

End Sub

 

Программа на флажок “Постоянный клиент скидка 25%”

 

Private Sub CheckBox2_Click()

If CheckBox2 = True Then

Label13.Caption = 0.25 * Label10.Caption

Label16.Caption = Label10.Caption - Label13.Caption

Else

Label13.Caption = ""

Label16.Caption = Label10.Caption

End If

End Sub

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.