Êөïòåãåí áàғäàðëàìàëàðäà òàңäàó áîëàäû: àқèқàò – æàëғàí. Îñûíäàé øåø³ìäåðä³ қàáûëäàó үø³í If… Then è Select Case øàðòòû îïåðàòîðëàðû áàð.
If… Then… Else îïåðàòîðûíûң ñèíòàêñèñ³ êåëåñ³äåé:
If <øàðò> Then <øàðòòûң ìәí³ True (àқèқàò) áîëғàíäà îðûíäàëàòûí îïåðàòîðëàð òîáû>
Else <øàðòòûң ìәí³ False (æàëғàí) áîëғàíäà îðûíäàëàòûí îïåðàòîðëàð òîáû>
EndIf
Select Case îïåðàòîðûíûң ñèíòàêñèñ³:
Select Case Òåêñåð³ëåò³í Өðíåê
Case Ìәí_1
Îïåðàòîðëàð òîáû _1
Case Ìәí_2
Îïåðàòîðëàð òîáû_2
End Select
Åíä³ øàðòòû îïåðàòðëàðìåí á³ðíåøå ìûñàë қàðàñòûðàéûқ.
Ìûñàë ¹1.
Àéòàëûқ, áðîêåðë³ê îðûíғà àðíàëғàí ñûéàқû қîðû êåë³ñ³ìäåð êөëåì³íå áàéëàíûñòû áîëñûí. Êåëåñ³äåé øàðòòàð қîéûëñûí:
- êåë³ñ³ìäåð êөëåì³ 200 ìûң òã äåé³í áîëғàíäà, ñûéàқû қîðû êåë³ñ³ìäåð êөëåì³í³ң 0,1% òåң;
- êåë³ñ³ìäåð êөëåì³ 200 ìûң òã ìåí 500 ìûң òã àðàëûғûíäà áîëғàíäà, ñûéàқû қîðû êåë³ñ³ìäåð êөëåì³í³ң 0,15% òåң;
- 500 ìûң òã æîғàðû áîëғàíäà, 0,2% òåң.
Áàғäàðëàìàíû құðó:
1. Ôîðìàғà ñóðåòòå êөðñåò³ëãåíäåé ýëåìåíòòåð îðíàëàñòûðûï, îëàðғà àòàó áåð³ң³ç.
2. lblÑûéàқû қîðû æәíå lblÑûéàқû æàçó áàñқàðó ýëåìåíòòåð³íå BordedStyle – 1 – Fixed Single қàñèåò ìәíäåð³í îðíàòûңûç.
Ñûéàқûíû åñåïòåó.
1. cmdÅñåïòåó áàòûðìàñûíäà åê³ ðåò øåðò³ï, êîäòû ðåäàêòîëðëåó òåðåçåñ³íå àóûñûңûç äà, ïðîöåäóðà øàáëîíûíà áàғäàðëàìà êîäûí åíã³ç³ң³ç:
Private Sub cmdÅñåïòåó_Click()
Dim Êåë³ñ³ìäåðÊөëåì³ As Single
Dim ÑûéàқûҚîðû As Single
Dim Msg$’ Қàòåë³ê òóðàëû ìәë³ìäåìåí³ åíã³çóãå àðíàëғàí æîëäûқ àéíûìàëû
Dim Ïðåìèÿ!
‘Ìәò³í өð³ñ³ áîñ åìåñ
‘æәíå åíã³ç³ëãåí àқïàðàò ñàí åêåí³íå êөç æåòê³çåì³ç
‘îë үø³í IsNumeric ôóíêöèÿñûí қîëäàíàìûç
‘Åãåð øàðò äұðûñ áîëñà, îíäà ìәò³í äåðåêò³ң êåðåêò³ òèï³íå òүðëåíåä³
‘àë íәòèæåí³ ñәéêåñ àéíûìàëûғà ìåíø³êòåéì³ç
If txt Êåë³ñ³ìäåðÊөëåì³.Text <> “ ” And IsNumeric(txt Êåë³ñ³ìäåðÊөëåì³.Text) Then
Êåë³ñ³ìäåðÊөëåì³ = CSng(txt Êåë³ñ³ìäåðÊөëåì³.Òext)
‘Åãåð øàð îðûíäàëìàñà, îíäà қîëäàíóøûғà MsgBox îïåðàòîðûíûң êөìåã³ìåí
‘äåðåêòåð åíã³çó áàðûñûíäùà áîëғàí қàòåë³ê òóðàëû ìәë³ìäåìå құðàìûç
‘êóðñîðäû өð³ñêå SetFocus әä³ñ³í³ң êөìåã³ìåí îðíàëàñòûðàìûç
‘ñîäàí êåé³í áàғäàðëàìà æұìûñû àÿқòàëàäû
Else
Msd$ = “Êåë³ñ³ìäåðÊөëåì³ өð³ñ³í áîñ қàëäûðóғà íåìåñå ñàíäûқ åìåñ ìәë³ìåò åíã³çóãå áîëìàéäû ”
MsgBox Msg, vbExclamation, “Äåðåêòåðä³ åíã³çó қàòåë³ã³ ”
Txt Êåë³ñ³ìäåðÊөëåì³.SetFocus
Exit Sub
End If
‘Åíã³ç³ëãåí ñàíäû åñåïò³ң áåð³ëãåí øàðòûìåí ñàëûñòûðàìûç
‘Åãåð øàðò äұðûñ áîëñà, îíäà Then ê³ëò ñөç³íåí êåé³íã³ îïåðàòîðëàðäû îðûíäàéìûç
If Êåë³ñ³ìäåðÊөëåì³ < 200 Then
ÑûéàқûҚîðû = 0.1
‘Åãåð øàðò îðûíäàëìàñà, êåëåñ³ òåêñåð³ñ îðûíäàëàäû,
‘Åãåð øàðò àқèқàòî áîëñà, îíäà îïåðàöèÿíû îðûíäàéìûç.
ElseIf Êåë³ñ³ìäåðÊөëåì³ >= 200 And Êåë³ñ³ìäåðÊөëåì³< 500 Then
ÑûéàқûҚîðû = 0,15
‘Åãåð åøá³ð øàðò äұðûñ áîëìàñà, îíäà үø³íø³ îïåðàöèÿíû îðûíäàéìûç
Else
ÑûéàқûҚîðû = 0,2
End If
Ïðåìèÿ = Êåë³ñ³ìäåðÊөëåì³ * ÑûéàқûҚîðû * 10
lbl ÑûéàқûҚîðû.Caption = CStr(ÑûéàқûҚîðû)
lblÑûéàқû.Caption = CStr(Ñûéàқû)
End Sub
Áåð³ëãåí áàғäàðëàìà êîäûíäà á³çãå òàíûñ åìåñ MsgBox îïåðàòîðû, SetFocus әä³ñ³ ìåí IsNumeric ôóíêöèÿñû êåçäåñåä³.
MsgBox îïåðàòîðû áåëãë³ë³ á³ð ìәë³ìäåìåñ³ áàð àқïàðàòòûқ ñұõáàò òåðåçåñ³í ýêðàíғà øûғàðàäû.
SetFocus әä³ñ³í қîëäàíғàíäà îáúåêò ôîêóñ àëàäû.
IsFocus ôóíêöèÿñû åíã³ç³ëãåí ìәë³ìåò ñàí íå ìәò³í åêåí³í á³ëó қàæåò áîëғàíäà қîëäàíûëàäû.
Ìûñàë ¹2.
Êәñ³ïîðûííûң ðåíòàáåëüä³ë³ã³í³ң êөðñåòê³ø³ êåëåñ³ àðàëûқòàðғà áөë³íãåí:
0-äåí 3% äåé³í – ðåíòàáåëüä³ë³ã³ òөìåí
3-äåí 20% äåé³í – ðåíòàáåëüä³
20-äåí 40% äåé³í – îðòà ðåíòàáåëüä³
40-äåí 70% äåé³í – ðåíòàáåëüä³ë³ã³ æîғàðû
Êәñ³ïîðûí ðåíòàáåëüä³ë³ã³í өç³íä³ê құííûң òàáûñқà қàòûíàñû ðåò³íäå àíûқòàï, îíûң қàé àðàëûқòà æàòқàíäûғûí àíûқòàó қàæåò.
Øåøó³.
1. Ôîðìàғà ñóðåòòå êөðñåò³ëãåíäåé ýëåìåíòòåð îðíàëàñòûðûï, îëàðғà àòàó áåð³ң³ç.
2. Áàðëûқ ýëåìåíòòåð үø³í Name қàñèåò³í³ң ìәí³í ñәéêåñ àòàóëàðìåí áåð³ң³ç.
3. Code êîäòû ðåäàêòîðëåó òåðåçåñ³íå êөø³ң³ç.
4. cmbÅñåïòåó áàòûðìàñûíûң ïðîöåäóðàñûíà òөìåíäå êөðñåò³ëãåí êîäòû åíã³ç³ң³ç:
Private Sub cmbÅñåïòåó_Click()
‘Currency òèïò³ àéíûìàëûëàðäû õàáàðëàó
Dim Өç³íä³êҚұí@
Dim Òàáûñ@
Dim Ðåíòàáåëüä³ë³ê@
‘Қàòåë³ê òóðàëû ìәë³ìäåìåí³ øûғàðàòûí àéíûìàëû
«Êәñ³ïîðûí ðåíòàáåëüä³ë³ã³í åñåïòåó» áàғäàðëàìàñû.
Dim Ìәë³ìäåìå$
If txt Өç³íä³êҚұí.Text <>”” And Is Numeric (txt Ñåáåñòîèìîñòü. Text) Then
Өç³íä³êҚұí @ = CCur(txt Өç³íä³êҚұí.Text)
Else
Ìәë³ìäåìå = “Ìәò³í өð³ñ³í áîñ қàëäûðóғà íåìåñå ñàíäûқ åìåñ ìәë³ìåò åíã³çóãå áîëìàéäû”
MsgBox Ìәë³ìäåìå, vbExclamation, “Äåðåêòåðä³ åíã³çó қàòåë³ã³”
txt Өç³íä³êҚұí.SetFocus
Exit Sub
End If
If txt Òàáûñ.Text<>”” And IsNumeric(txt Òàáûñ.Text) Then
Òàáûñ @ = Ccur(txt Òàáûñ.Text)
Else
Ìәë³ìäåìå = “ Ìәò³í өð³ñ³í áîñ қàëäûðóғà íåìåñå ñàíäûқ åìåñ ìәë³ìåò åíã³çóãå áîëìàéäû ”
MsgBox îîáùåíèè, vbExclamation, “ Äåðåêòåðä³ åíã³çó қàòåë³ã³ ”
txt Òàáûñ.SetFocus
Exit Sub
End If
Ðåíòàáåëüä³ë³ê@ = Өç³íä³êҚұí@/Òàáûñ@
lbl Ðåíòàáåëüä³ë³ê.Caption = CStr(Ðåíòàáåëüä³ë³ê @)
Select Case Ðåíòàáåëüä³ë³ê
Case 0 To 3
lblÀðàëûқ.Caption = “Ðåíòàáåëüä³ë³ã³ òөìåí”
Case 4 To 20
lbl Àðàëûқ.Caption = “Ðåíòàáåëüä³”
Case 21 To 40
lbl Àðàëûқ.Caption = “Îðòà ðåíòàáåëüä³”
Case 41 To 70
lbl Àðàëûқ.Caption = “Ðåíòàáåëüä³ë³ã³ æîғàðû”
Case Else
lbl Àðàëûқ.Caption = “Äåðåêòåð қàòå”
End Select
End Sub
5. Áàғäàðëàìàíû ³ñêå қîñûңûç, äұðûñ äåï òàïñàңûç áàғäàðëàìà æұìûñûíà òүçåòóëåð åíã³ç³ң³ç.
Өç áåò³ìåí îðûíäàóғà àðíàëғàí òàïñûðìàëàð:
Áàñқàðó îïåðàòîðëàðûí ïàéäàëàíûï, áàғäàðëàìà құðûңûç.
Ëàáîðàòîðèÿëûқ æұìûñ ¹14 (1 ñàғàò)
Òàқûðûáû: «Öèêëäåðä³ áàғäàðëàìàëàó»
Æұìûñòûң ìàқñàòû:VBA-òå öèêëä³ê àëãîðèòìäåðãå áàғäàðëàìàëàð құðó
Òàïñûðìà:
1. VBA-òåã³ èòåðàòèâò³ îïåðàòîðëàðäû îқûï-үéðåíó
2. Ñàíàóûøû áàð öèêëäåðä³ æәíå øàðòû áàð öèêëäåðä³ қàðàñòûðó
3. VBA-òå öèêëãå áàғäàðëàìà құðó
4. Åñåï áåðóä³ құðó