Здавалка
Главная | Обратная связь

Позначення складових елементів управління



Поперкдній запис-----pop

Наступний запис-------nast

Перший запис----------odyn

Останній запис--------ost

Редагувати--------------redag

Доповнити--------------dop

Видалити----------------del

Зберегти-----------------zber

Відмінити---------------canc

Сорт. за кільк.----------sort

Всього (зарплата)------vse

Кількість записів------kolzap

Вихід--------------------ex

Перед тим як ввести програмний код для окремих процедур потрібно задати імена ідентифікаторів.

Текст програми

Спочатку нам треба створити активізацію форми:

Dim x1 As Date

Dim x4, jf, i As Integer

Dim x3, x6, x8, x9, x11, x12, x13, x10, jr As Double

Dim x2, x5, x7 As String

Dim x0, x20 As Variant

 

Private Sub canc_Click()

dat.Text = x1

pk.Text = x2

narah.Text = x3

kilc.Text = x4

fah.Text = x5

taruf.Text = x6

rozrad.Text = x7

koef.Text = x8

premia.Text = x9

nadb.Text = x10

vn.Text = x11

pod.Text = x12

vsogo.Text = x13

 

'Кнопки

odyn.Enabled = True

pop.Enabled = True

nast.Enabled = True

ost.Enabled = True

redag.Enabled = True

dop.Enabled = True

canc.Enabled = False

zber.Enabled = False

ex.Enabled = True

'Поля

dat.Locked = True

pk.Locked = True

fah.Locked = True

rozrad.Locked = True

kilc.Locked = True

taruf.Locked = True

koef.Locked = True

narah.Locked = True

premia.Locked = True

nadb.Locked = True

vn.Locked = True

pod.Locked = True

vsogo.Locked = True

 

pk.BackColor = &HFFFFFF

fah.BackColor = &HFFFFFF

rozrad.BackColor = &HFFFFFF

kilc.BackColor = &HFFFFFF

 

End Sub

 

Private Sub dat_Change()

 

End Sub

 

Private Sub dop_Click()

i = 1

'Змінні

x1 = dat.Text

x2 = pk.Text

x3 = narah.Text

x4 = kilc.Text

x5 = fah.Text

x6 = taruf.Text

x7 = rozrad.Text

x8 = koef.Text

x9 = premia.Text

x10 = nadb.Text

x11 = vn.Text

x12 = pod.Text

x13 = vsogo.Text

'Кнопки

odyn.Enabled = False

pop.Enabled = False

nast.Enabled = False

ost.Enabled = False

redag.Enabled = False

dop.Enabled = False

canc.Enabled = True

zber.Enabled = True

ex.Enabled = False

'Поля

dat.Text = Date

pk.Text = ""

fah.Text = ""

taruf.Text = ""

rozrad.Text = ""

kilc.Text = ""

narah.Text = ""

premia.Text = ""

nadb.Text = ""

vn.Text = ""

pod.Text = ""

vsogo.Text = ""

'Доступ до полів

pk.Locked = False

fah.Locked = False

rozrad.Locked = False

kilc.Locked = False

 

kilc.SetFocus

 

pk.BackColor = &HFF00&

fah.BackColor = &HFF00&

rozrad.BackColor = &HFF00&

kilc.BackColor = &HFF00&

 

End Sub

 

Private Sub ex_Click()

If MsgBox("Підтвердіть вихід", vbYesNo, "Вікно запиту") = vbYes Then

Unload UserForm1

End If

End Sub

 

Private Sub fah_Change()

'Нова змінна

x0 = ActiveCell.Address

'Довідник фахів

Range("b3").Select

Do While ActiveCell.Value <> ""

If ActiveCell.Value = fah.Text Then

jf = ActiveCell.Offset(0, 1).Value

End If

ActiveCell.Offset(1, 0).Select

Loop

'Поле довідника

taruf.Text = jf

'Наступний вибір

Range(x0).Select

 

End Sub

 

Private Sub kilc_Change()

'Розрахунок

narah.Text = Str(Int(jf * jr * Val(kilc.Text) * 100) / 100)

nadb.Text = Str(Int(jf * jr * Val(kilc.Text) * 20) / 100)

vn.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 100) / 100)

pod.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 10) / 100)

vsogo.Text = Str(Int((Val(vn.Text) - Val(pod.Text)) * 100) / 100)

If Val(kilc.Text) < 100 Then

premia = 0

ElseIf Val(kilc.Text) < 250 Then

premia = Val(narah.Text) * 0.05

ElseIf Val(kilc.Text) < 350 Then

premia = Val(narah.Text) * 0.1

Else

premia = Val(narah.Text) * 0.2

End If

 

End Sub

 

Private Sub koef_Change()

'Розрахунок

narah.Text = Str(Int(jf * jr * Val(kilc.Text) * 100) / 100)

nadb.Text = Str(Int(jf * jr * Val(kilc.Text) * 20) / 100)

vn.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 100) / 100)

pod.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 10) / 100)

vsogo.Text = Str(Int((Val(vn.Text) - Val(pod.Text)) * 100) / 100)

If Val(kilc.Text) < 100 Then

premia = 0

ElseIf Val(kilc.Text) < 250 Then

premia = Val(narah.Text) * 0.05

ElseIf Val(kilc.Text) < 350 Then

premia = Val(narah.Text) * 0.1

Else

premia = Val(narah.Text) * 0.2

End If

 

End Sub

 

Private Sub kolzap_Click()

 

'Адреса активного запису

q = ActiveCell.Address

'Розрахунок

'Перехід на 1 запис

Range("g3").Select

'Початкове значення

s = 1

'Кількість записів

 

Do While ActiveCell.Offset(1, 0).Value <> ""

ActiveCell.Offset(1, 0).Select

 

s = s + 1

 

Loop

'Повернення на активний запис

Range(q).Select

'Поля гол таблиці

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

'Виведення результатів

MsgBox "Кількість записів у базі даних=" & s

 

End Sub

 

Private Sub nadb_Change()

nadb.Text = Str(Int(jf * jr * Val(kilc.Text) * 20) / 100)

End Sub

 

Private Sub narah_Change()

narah.Text = Str(Int(jf * jr * Val(kilc.Text) * 100) / 100)

End Sub

 

Private Sub nast_Click()

'Умова

If ActiveCell.Offset(1, 0).Value <> "" Then

ActiveCell.Offset(1, 0).Select

'Поля головної таблиці

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

'Активність кнопок

odyn.Enabled = True

pop.Enabled = True

Else

'Активність кнопок

nast.Enabled = False

ost.Enabled = False

MsgBox "Останній запис"

End If

 

End Sub

 

Private Sub odyn_Click()

'Умова

Do While ActiveCell.Row > 3

ActiveCell.Offset(-1, 0).Select

Loop

 

'Поля головної таблиці

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

'Активність кнопок

nast.Enabled = True

ost.Enabled = True

odyn.Enabled = False

pop.Enabled = False

MsgBox "Перший запис"

 

End Sub

 

Private Sub ost_Click()

'Умова

Do While ActiveCell.Offset(1, 0).Value <> ""

ActiveCell.Offset(1, 0).Select

Loop

 

'Поля головної таблиці

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

'Активність кнопок

odyn.Enabled = True

pop.Enabled = True

nast.Enabled = False

ost.Enabled = False

MsgBox "Останній запис"

 

End Sub

 

Private Sub pk_Change()

 

End Sub

 

Private Sub pod_Change()

vn.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 100) / 100)

pod.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 10) / 100)

vsogo.Text = Str(Int((Val(vn.Text) - Val(pod.Text)) * 100) / 100)

 

End Sub

 

Private Sub pop_Click()

'Умова

If ActiveCell.Row > 3 Then

ActiveCell.Offset(-1, 0).Select

'Поля головної таблиці

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

 

'Активність кнопок

nast.Enabled = True

ost.Enabled = True

Else

'Активність кнопок

odyn.Enabled = False

pop.Enabled = False

MsgBox "Перший запис"

End If

 

End Sub

 

Private Sub premia_Change()

If Val(kilc.Text) < 100 Then

premia = 0

ElseIf Val(kilc.Text) < 250 Then

premia = Val(narah.Text) * 0.05

ElseIf Val(kilc.Text) < 350 Then

premia = Val(narah.Text) * 0.1

Else

premia = Val(narah.Text) * 0.2

End If

 

End Sub

 

Private Sub redag_Click()

i = 2

'Змінні

x1 = dat.Text

x2 = pk.Text

x3 = narah.Text

x4 = kilc.Text

x5 = fah.Text

x6 = taruf.Text

x7 = rozrad.Text

x8 = koef.Text

x9 = premia.Text

x10 = nadb.Text

x11 = vn.Text

x12 = pod.Text

x13 = vsogo.Text

'Кнопки

odyn.Enabled = False

pop.Enabled = False

nast.Enabled = False

ost.Enabled = False

redag.Enabled = False

dop.Enabled = False

canc.Enabled = True

zber.Enabled = True

ex.Enabled = False

'Доступ до полів

 

pk.Locked = False

fah.Locked = False

rozrad.Locked = False

kilc.Locked = False

 

kilc.SetFocus

 

pk.BackColor = &HFF00&

fah.BackColor = &HFF00&

rozrad.BackColor = &HFF00&

kilc.BackColor = &HFF00&

 

End Sub

 

Private Sub rozrad_Change()

'Нова змінна

x20 = ActiveCell.Address

'Довідник розрядів

Range("d3").Select

Do While ActiveCell.Value <> ""

If ActiveCell.Value = rozrad.Text Then

jr = ActiveCell.Offset(0, 1).Value

End If

ActiveCell.Offset(1, 0).Select

Loop

'Поле довідника

koef.Text = jr

'Наступний вибір

Range(x20).Select

End Sub

 

Private Sub taruf_Change()

'Розрахунок

narah.Text = Str(Int(jf * jr * Val(kilc.Text) * 100) / 100)

nadb.Text = Str(Int(jf * jr * Val(kilc.Text) * 20) / 100)

vn.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 100) / 100)

pod.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 10) / 100)

vsogo.Text = Str(Int((Val(vn.Text) - Val(pod.Text)) * 100) / 100)

If Val(kilc.Text) < 100 Then

premia = 0

ElseIf Val(kilc.Text) < 250 Then

premia = Val(narah.Text) * 0.05

ElseIf Val(kilc.Text) < 350 Then

premia = Val(narah.Text) * 0.1

Else

premia = Val(narah.Text) * 0.2

End If

 

End Sub

 

Private Sub UserForm_Activate()

'Довідники

Range("b3").Select

Do While ActiveCell.Value <> ""

fah.AddItem ActiveCell.Value

ActiveCell.Offset(1, 0).Select

Loop

Range("d3").Select

Do While ActiveCell.Value <> ""

rozrad.AddItem ActiveCell.Value

ActiveCell.Offset(1, 0).Select

Loop

'Таблиця обліку

Range("g3").Select

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

'Активність кнопок

odyn.Enabled = False

pop.Enabled = False

zber.Enabled = False

canc.Enabled = False

 

'Доступ до полів і списків

dat.Locked = True

pk.Locked = True

fah.Locked = True

rozrad.Locked = True

kilc.Locked = True

taruf.Locked = True

koef.Locked = True

narah.Locked = True

premia.Locked = True

nadb.Locked = True

vn.Locked = True

pod.Locked = True

vsogo.Locked = True

 

End Sub

 

 

Private Sub vn_Change()

vn.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 100) / 100)

pod.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 10) / 100)

vsogo.Text = Str(Int((Val(vn.Text) - Val(pod.Text)) * 100) / 100)

 

End Sub

 

Private Sub vse_Click()

'Адреса активного запису

q100 = ActiveCell.Address

'Розрахунок

'Перехід на 1 запис

Range("s3").Select

'Початкове значення

Sum = Val(vsogo.Text)

'Кількість записів

 

Do While ActiveCell.Offset(1, 0).Value <> ""

ActiveCell.Offset(1, 0).Select

 

Sum = Sum + ActiveCell.Value

 

Loop

'Повернення на активний запис

Range(q100).Select

'Поля гол таблиці

dat.Text = ActiveCell.Value

pk.Text = ActiveCell.Offset(0, 1).Value

fah.Text = ActiveCell.Offset(0, 2).Value

rozrad.Text = ActiveCell.Offset(0, 3).Value

kilc.Text = ActiveCell.Offset(0, 4).Value

taruf.Text = ActiveCell.Offset(0, 5).Value

koef.Text = ActiveCell.Offset(0, 6).Value

narah.Text = ActiveCell.Offset(0, 7).Value

premia.Text = ActiveCell.Offset(0, 8).Value

nadb.Text = ActiveCell.Offset(0, 9).Value

vn.Text = ActiveCell.Offset(0, 10).Value

pod.Text = ActiveCell.Offset(0, 11).Value

vsogo.Text = ActiveCell.Offset(0, 12).Value

'Виведення результатів

MsgBox "Всього зарплати =" & Sum

 

End Sub

 

Private Sub vsogo_Change()

vn.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 100) / 100)

pod.Text = Str(Int((Val(narah.Text) + Val(premia.Text) + Val(nadb.Text)) * 10) / 100)

vsogo.Text = Str(Int((Val(vn.Text) - Val(pod.Text)) * 100) / 100)

 

End Sub

 

Private Sub zber_Click()

'Редагування

If i = 2 Then

ActiveCell.Offset(0, 1).Value = pk.Text

ActiveCell.Offset(0, 2).Value = fah.Text

ActiveCell.Offset(0, 3).Value = rozrad.Text

ActiveCell.Offset(0, 4).Value = kilc.Text

'Кнопки

odyn.Enabled = True

pop.Enabled = True

nast.Enabled = True

ost.Enabled = True

redag.Enabled = True

dop.Enabled = True

canc.Enabled = False

zber.Enabled = False

ex.Enabled = True

'Поля

dat.Locked = True

pk.Locked = True

fah.Locked = True

rozrad.Locked = True

kilc.Locked = True

taruf.Locked = True

koef.Locked = True

narah.Locked = True

premia.Locked = True

nadb.Locked = True

vn.Locked = True

pod.Locked = True

vsogo.Locked = True

 

pk.BackColor = &HFFFFFF

fah.BackColor = &HFFFFFF

rozrad.BackColor = &HFFFFFF

kilc.BackColor = &HFFFFFF

End If

'Доповнення

If i = 1 Then

Range("g3:s3").Select

Selection.Copy

Do While ActiveCell.Value <> ""

ActiveCell.Offset(1, 0).Select

Loop

ActiveSheet.Paste

ActiveCell.Offset(0, 1).Value = pk.Text

ActiveCell.Offset(0, 2).Value = fah.Text

ActiveCell.Offset(0, 3).Value = rozrad.Text

ActiveCell.Offset(0, 4).Value = kilc.Text

'Кнопки

odyn.Enabled = True

pop.Enabled = True

nast.Enabled = False

ost.Enabled = False

redag.Enabled = True

dop.Enabled = True

canc.Enabled = False

zber.Enabled = False

ex.Enabled = True

'Поля

dat.Locked = True

pk.Locked = True

fah.Locked = True

taruf.Locked = True

rozrad.Locked = True

kilc.Locked = True

narah.Locked = True

premia.Locked = True

nadb.Locked = True

vn.Locked = True

pod.Locked = True

vsogo.Locked = True

 

pk.BackColor = &HFFFFFF

fah.BackColor = &HFFFFFF

rozrad.BackColor = &HFFFFFF

kilc.BackColor = &HFFFFFF

End If

 

End Sub

 

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.