Позначення складових елементів управління ⇐ ПредыдущаяСтр 2 из 2
Поперкдній запис-----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 Все права принадлежат авторам размещенных материалов.
|