Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VBA 11 Пользовательские формы.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
430.59 Кб
Скачать

Модуль формы

Option Explicit

Private Sub Выход_Click()

' ValCalc.Hide 'окно исчезает с экрана, но остается в памяти

Unload ValCalc 'окно удаляется из оперативной памяти

End Sub

Private Sub InRub_Click()

pInRub = 1

pInEuro = 0

pInDoll = 0

End Sub

Private Sub InEuro_Click()

pInRub = 0

pInEuro = 1

pInDoll = 0

End Sub

Private Sub InDoll_Click()

pInRub = 0

pInEuro = 0

pInDoll = 1

End Sub

Private Sub OutRub_Click()

pOutRub = 1

pOutEuro = 0

pOutDoll = 0

End Sub

Private Sub OutEuro_Click()

pOutRub = 0

pOutEuro = 1

pOutDoll = 0

End Sub

Private Sub OutDoll_Click()

pOutRub = 0

pOutEuro = 0

pOutDoll = 1

End Sub

Private Sub KrsEuro_Change()

If IsNumeric(ValCalc.KrsEuro.Text) Then

ValCalc.КурсВалют.Caption = "Курс валют"

ValCalc.КурсВалют.ForeColor = &H80000008

ValCalc.KrsEuro.ForeColor = &H80000008 'черный

KursEuro = ValCalc.KrsEuro.Text

Else 'строка не число

ValCalc.КурсВалют.Caption = "Не число"

ValCalc.КурсВалют.ForeColor = &HFF&

ValCalc.KrsEuro.ForeColor = &HFF& 'красный цвет

End If

End Sub

Private Sub KrsDoll_Change()

If IsNumeric(ValCalc.KrsDoll.Text) Then

ValCalc.КурсВалют.Caption = "Курс валют"

ValCalc.КурсВалют.ForeColor = &H80000008

ValCalc.KrsDoll.ForeColor = &H80000008 'черный

KursDoll = ValCalc.KrsDoll.Text

Else 'строка не число

ValCalc.КурсВалют.Caption = "Не число"

ValCalc.КурсВалют.ForeColor = &HFF&

ValCalc.KrsDoll.ForeColor = &HFF& 'красный цвет

End If

End Sub

Private Sub InVal_Change()

If IsNumeric(ValCalc.InVal.Text) Then

ValCalc.ВведитеВалюту.Caption = "Введите валюту"

ValCalc.ВведитеВалюту.ForeColor = &H80000008

ValCalc.InVal.ForeColor = &H80000008 'черный

Sinput = ValCalc.InVal.Text

Else 'строка не число

ValCalc.ВведитеВалюту.Caption = "Не число"

ValCalc.ВведитеВалюту.ForeColor = &HFF&

ValCalc.InVal.ForeColor = &HFF& 'красный цвет

End If

End Sub

Private Sub Пересчет_Click()

If KursEuro <= 0 Or KursDoll <= 0 Then Exit Sub

Srub = Sinput * (pInRub _

+ pInEuro * KursEuro + pInDoll * KursDoll)

Sout = Srub * (pOutRub _

+ pOutEuro / KursEuro + pOutDoll / KursDoll)

ValCalc.OutVal.Text = Round(Sout, 2)

End Sub

Модуль Валя

Option Explicit

Public pInRub As Double

Public pInDoll As Double

Public pInEuro As Double

Public pOutRub As Double

Public pOutDoll As Double

Public pOutEuro As Double

Public KursDoll As Double

Public KursEuro As Double

Public Sinput As Double

Public Sout As Double

Public Srub As Double

Sub Валюта()

pInRub = 1: pInDoll = 0: pInEuro = 0

ValCalc.InRub.Value = 1 'включить радиокнопку

pOutRub = 1: pOutDoll = 0: pOutEuro = 0

ValCalc.OutRub.Value = 1 'включить радиокнопку

KursEuro = 45.07

ValCalc.KrsEuro.Text = KursEuro

KursDoll = 30.62

ValCalc.KrsDoll.Text = KursDoll

Sinput = 0: Srub = 0: Sout = 0

ValCalc.InVal.Text = Sinput

ValCalc.OutVal.Text = Sout

ValCalc.Show

' MsgBox "входные " & pInRub & pInEuro & pInDoll _

& vbNewLine & "выходные " & pOutRub & pOutEuro & pOutDoll _

& vbNewLine & "KursEuro " & KursEuro _

& vbNewLine & "KursDoll " & KursDoll _

& vbNewLine & "вх.сумма " & Sinput _

& vbNewLine & "руб.сумма " & Srub _

& vbNewLine & "вых.сумма " & Sout

End Sub

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]