fbpx

က MS Access ကိုသင်ခန်းစာ – သင်၏အဆက်မပြတ်ပုံစံများအတွက်အဆင့်မြင့်အရောင် Coding

ဒါကြောင့်အလွယ်တကူဝေဖန်ဒေတာမှအသုံးပြုသူရဲ့မျက်စိညွှန်ကြားအဖြစ်အရောင်နိုင်တဲ့ coding ပုံစံတန်ဖိုးကထပ်ပြောသည်။ ဒါကအသုံးပြုသူလျင်မြန်စွာအမှားအယွင်းများသို့မဟုတ်သတိပေးချက်များများအတွက်အချက်အလက်များ၏တစ်ဦးစာမကျြနှာအကဲဖြတ်ဖို့ခွင့်ပြုတဲ့အင်အားကြီး technique ကိုဖြစ်ပါတယ်။ Access ကိုအတူအခက်အခဲကြောင့် function ကိုအပေါ်ထားသည့်ကန့်သတ်သည်။ Access ကိုသငျသညျအသီးအသီးသောလယ်မီးမောင်းထိုးပြမှသုံးနိုငျလေးအရောင်များကိုတစ်ကန့်သတ်ထားပါတယ်။ စဉ်ဆက်မပြတ်ပုံစံများကိုခြွင်းချက်ပုံစံချပေးတွေကိုအသုံးပြုတဲ့အခါနောက်ထပ်အသိပေးချက်အဘယျအသင်တဦးတည်းစံချိန်လျှောက်ထားပုံစံများ၏အသေးစိတ်အပိုင်းအားလုံးကိုမှတ်တမ်းများသက်ဆိုင်သောကွောငျ့ဖွစျသညျ။ ဒီသင်ခန်းစာမှာဖော်ပြထားတဲ့အခြေအနေကိုကုဒ်နည်းစနစ်များအသုံးပြုခြင်း, အဲဒီမှာသင်လေးခုအရောင်ရွေးချယ်မှုတစ်ခုလယ်ပြင်အခြေအနေများတင်ထားရန်လျှောက်ထားနိုင်ပါသည်ယုတ္တိဗေဒရန်မန့်သတ်ချက်ဖြစ်ပါသည်, သို့သော်သင်နေတုန်းပဲတစ်ဦးချင်းစီကိုလယ်ပေါ်လေးအရောင်များမှကန့်သတ်ကြသည်။

စားပွဲတစ်ခု ဖန်တီး. ColorCoding ကြောင့်အမည်ကို။ (ထိုနံပါတ်များကိုမပါဘဲ) အောက်ပါကွက်လပ်များကိုရိုက်ထည့်ပါ

1) Autonumber အဖြစ် CntrID ကမူလတန်းသော့ချက်ကိုလယ်လုပ်

စာသားကိုအဖြစ် 2) Cntname

3) ကစာသားအဖြစ် WorkDesc – ထိုဒေတာများကိုစံနမူနာကုဒ်တွေနဲ့အလုပ်လုပ်ဖို့ "မိ" သို့မဟုတ် "ဗိုလ်မှူး" ဖြစ်သင့်သည်ဖြစ်စေ

4) EMR အရေအတွက်ကိုအဖြစ်တစ်ခုတည်း –the ဒေတာဒီဥပမာနှင့်အတူအလုပ်လုပ်ရန် 1 နှင့် 10 အကြားမည်သည့်ကိန်းဖြစ်သင့်

5) နေ့စွဲ / အချိန်အဖြစ် aggdate

6) ငွေကြေးအဖြစ် aggamnt – ဒေတာသန်းပေါင်းများစွာအတွက်ဒေါ်လာဒါ = 2 နှစ်ခုသန်းအာမခံအတွက်ဖြစ်သင့်ပါတယ်

နေ့စွဲ / အချိန်အဖြစ် 7) wcompdate

8) ငွေကြေးအဖြစ် wcompamnt – ဒေတာသန်းပေါင်းများစွာအတွက်ဒေါ်လာဖြစ်သင့်

9) နံပါတ်, ရှည်လျားသောကိန်းအဖြစ် concode ဤနယ်ပယ်တွင်ဒါကွက်လပ်ချန်ထားတွက်ချက်ပါလိမ့်မည်။

စမ်းသပ်ခြင်းများအတွက် table ထဲမှာတချို့ဒေတာများကိုရိုက်ထည့်ပါ။

ဒေတာအရင်းအမြစ်အဖြစ် ColorCoding စားပွဲပေါ်မှာသုံးပြီးပုံစံစဉ်ဆက်မပြတ်စတိုင်ပုံစံကိုဖန်တီးပါ။ ပုံစံ header ကို / footer ထည့်ပါ။

ပုံစံ (optional ကို) ၏ပုံစံကိုခေါင်းစဉ်အပိုင်းတစ်ပုံစံခေါင်းစဉ်ထားပါ။

ယင်းဂုဏ်သတ္တိများပုံစံပေါ်တွင်အခြား tab ကိုအသုံးပြုပါကထိန်းချုပ်မှုအရင်းအမြစ်ရဲ့အဖြစ်တစ်ဦးချင်းစီကိုလယ်အမည်တူပေးပါ။ ဒီတော့ဥပမာများအတွက် (EMR) ကိုလယ် "EMR" အမည်ကို။ သငျသညျ VBA ကုဒ်ဖန်တီးသည့်အခါထိုအခါသင်သည် variable ကိုနာမည်များတူ၏လယ်ပြင်အမည်များကိုအသုံးနိုင်သလား။

စားပွဲပေါ်မှာအားလုံးလယ်ကွင်း Add နှင့်တစ်ဦးချင်းစီကိုလယ်အထက်ပေမယ့်ပုံစံ၏ပုံစံကိုခေါင်းစဉ်အပိုင်းအတွက်လယ်ကွင်းတံဆိပ်များနှင့်အတူတတန်း align ။

ဒါကပုံစံများ၏အသေးစိတ်အပိုင်းအတွက်လယ်ကွင်းများထဲမှအတန်းစွန့်ခွာသင့်ပါတယ်။

အဆိုပါစာတန်းရဲ့ Refresh နှင့်အတူထဲက footer အတွက်ခလုတ်တစ်ခုထားပါ။

သင့်ရဲ့ပုံစံပေါ်တွင်ဒီဇိုင်း mode မှာ, Format ကို / အခြေအနေအရ format ကိုရွေးချယ်ပါ။

အခြေအနေကိုကုဒ်ထဲမှာဇာတ်ကောင်စစ်ဆေးနှင့်သင့်အခွအေနေအရောင်များကိုတင်ထားရန်အနေတော် command ကိုသုံးပါ။ အဆိုပါ (EMR) လယ်ပြင်မှာကြည့်ပါ။ ဒါဟာဘယ်ဖက်ကနေစတုတ္ထလယ်ပြင်သည်။ အဆိုပါအလယ်အလတ် command ကိုဤကဲ့သို့သောအခြေအနေ Set 3. ၏တန်ဖိုးကို 1 ဇာတ်ကောင်တစ်ဦး span ဘို့စတုတ္ထဇာတ်ကောင်အရပျ၌ကိုလယ် concode စစ်ဆေး Access ကိုညွှန်ကြား

အဖြူရောင်နောက်ခံနဲ့အနက်ရောင်စာလုံးအရောင်အစုံပုံစံကို default ချန်ထားပါ။

expression အလယ်အလတ် ((concode), 4,1) = "3" တဲ့အရောင် Pick ဖြစ်ပါတယ် – ငါ 3 တစ်ခုသို့မဟုတ်ပျက်ကွက်ကျန်းမာရေးအခြေအနေကြောင့်အနီရောင်ကိုသုံးပါ

expression အလယ်အလတ် ((concode), 4,1) = "2" ငါသည် 2 သို့မဟုတ်သတိပေးကျန်းမာရေးအခြေအနေကြောင့်အဝါရောင်ကိုအသုံးတဲ့ color– Pick ဖြစ်ပါသည်

expression အလယ်အလတ် ((concode), 4,1) = "1" အရောင် Pick ဖြစ်ပါတယ် – ငါ 1 တစ်ခုသို့မဟုတ်သွားတာအခွအေနေအဘို့အအစိမ်းရောင်ကိုသုံးပါ

သင်တို့အပေါ်မှာအခြေအနေများသတ်မှတ်ထားရန်ဆန္ဒရှိတစ်ဦးချင်းစီကိုလယ်အဘို့ဤပြန်လုပ်ပါ။ left ကနေညာဘက်ကိုစတင်အခြေအနေကိုကုဒ်အသီးအသီးဇာတ်ကောင် left ကနေညာဘက်ကိုတစ်ဦးကိုသက်ဆိုင်ရာလယ်ကိုကိုယ်စားပြုပါလိမ့်မယ်သတိပြုပါ။ ဒါကြောင့်အခြေအနေကိုကုဒ်လယ်ပြင်ပေါ်တွင် 2 အရပျ၌ 3 အနီရောင်ဖို့ (CntName) လယ်ပြင်ထားမည်။ အထက်လယ်ပြင်နံပါတ်များကိုကြည့်ရှုပါ။ နောက်ဆက်တွဲလယ်ကွင်းတူညီတဲ့ sequence ကိုလိုက်နာပါ။

အဆိုပါ (aggdate) လယ်ပြင်, ပဉ်စလယ်ကွင်းများအတွက်တစ်ခုမှာပိုပြီးဥပမာ, အ condtional format နဲ့တူလိမ့်မယ်:

expression အလယ်အလတ် ((concode), 5,1) = "3" တဲ့အရောင် Pick ဖြစ်ပါတယ်။

အဆိုပါအခွအေနေ code ကိုလယ်ပြင်, (concode), တန်ဖိုးများကိုသငျသညျက assign ချင်သောမည်သည့်ယုတ္တိဗေဒနှင့်အတူဖန်တီးနေကြသည်။ ဒီဥပမာမှာအခြေအနေကိုကုဒ်ရှစ်ဇာတ်ကောင်ကျယ်ပြန့်ဖြစ်ပါတယ်ဒါကြောင့်ကျွန်မရှစ်လယ်ကွင်းသုံးပြီးငါနှင့်တစ်ဦးချင်းစီဇာတ်ကောင်ဒါကြောင့်အခုအထက်စတုတ္ထဇာတ်ကောင်နှစ်လယ်ပိုင်း command ကို အသုံးပြု. ဒီ 10112321. တူဖြစ်နိုင်သည်တစ် 0,1,2, ဒါမှမဟုတ် 3. ဖြစ်စေဖြစ်နိုင် 1 ဒါစတုတ္ထလယ်ပြင်, (EMR) အတွက်အခွအေနေ, အစိမ်းမှ 1 ရသောအခြေအနေများလိမ့်မည်ဖြစ်ပါသည်။ သငျသညျပုံစံဒီဇိုင်းနှင့်စုံစမ်းပြီပြီးတာနဲ့သင်ကပြန်သွားပြီးမမြင်ရတဲ့ရန် (concode) လယ်ပြင်ကိုတင်ထားရန်လိုပေမည်။ သင်၏အသုံးပြုသူများကြောင့် data ကိုကြည့်ဖို့မလိုအပ်ပါဘူး။

သငျသညျပုံစံကိုအောက်ပါကုဒ်လျှောက်ထားဖန်တီးပြီးနောက်။ သငျသညျဖျောပွထားတူညီလယ်ကွင်းအမည်များကိုအသုံးပြုလျှင်သင်မည်သည့်စာရိုက်စရာမလိုဘဲပုံစံသို့ဤညာဘက်ဖြတ် paste နိုင်ပါတယ်။

——– ကဒီမှာ Cut

Option ကိုဒေတာဘေ့စနှိုငျးယှဉျ

DAO.Recordset အမျှဖမ်းယူရေးမှိန်

ဒေတာဘေ့စအဖြစ် DB မှိန်

ပြည်သူ့ရာထူးအမည် SetConCode ()

မှားယွင်းနေသည် Goto erout တွင်

Integer အမျှမှေးမှိန်အချက်တွေရှိပါတယ် (10), 0 = အဖြူ, 3 = အနီ, 2 = အဝါရောင်, 1 = အစိမ်းရောင် Integer '' ကောင်းတဲ့အချက်တွေရှိပါတယ်တန်ဖိုးများအဖြစ် y က, String အဖြစ် Integer, CCode အမျှ x

'' Uncomment နှငျ့သငျမှတ်တမ်းများရာပေါင်းများစွာရှိသည်နှင့် update လုပ်ဖို့မျက်နှာပြင်ပေါ်ရှိစောင့်ဆိုင်းရန်မလိုကြပါလျှင်နောင်လာမည့် line ကိုသုံးပါ

'' DoCmd.Echo အယူမှား

'' သုညမှလယ်ပြင်တန်ပြန် Set

သငျသညျကိုသှားအဖြစ်က x = 0 '' လယ်ပြင်တန်ပြန်တိုး

x = x ကို + 1

'' အဆင့် 1

အကယ်. IsNull (CntrID) ထို့နောကျ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 0

အခြားသူ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 1

အကယ်. ရပ်တန့်

x = x ကို + 1 ခု '' အဆင့် 2

အကယ်. IsNull (Cntname) ထို့နောကျ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 0

အခြားသူ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 1

အကယ်. ရပ်တန့်

x = x ကို + 1 ခု '' အဆင့် 3

အကယ်. IsNull (WorkDesc) ထို့နောကျ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 0

အခြားသူ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 1

အကယ်. ရပ်တန့်

x = x ကို + 1 ခု '' အဆင့် 4

အကယ်. IsNull (EMR) ထို့နောကျ

ကောင်းတဲ့အချက်တွေရှိပါတယ် (x) အဖွဲ့ = 0

ElseIf

ထိုအခါ EMR 3 အခုတော့ EMR = () ထိုအ aggdate = 1 ထိုအခါ aggamnt = 3 aggamnt = Now ကို () ထိုအ wcompdate 3 wcompamnt 1

ကောင်းတဲ့အချက်တွေရှိပါတယ် (2) = 2

အကယ်. ရပ်တန့်

ထိုအခါ 1 InStr (4, concode, "3")> အကယ်.

ကောင်းတဲ့အချက်တွေရှိပါတယ် (2) = 3

အကယ်. ရပ်တန့်

'' left ကနေညာဘက်ကို X ၏တန်ဖိုးစုဆောင်းအချက်တွေရှိပါတယ်တန်ဖိုးများထံမှ conCode လယ်ကွင်းတန်ဖိုးများကို Build

က y = 0

က y = 1 8 ရန်

y ကိုထိုအခါ 1 = အကယ်.

CCode = အချက်တွေရှိပါတယ် (y) သည်

အခြားသူ

CCode = CCode & အချက်တွေရှိပါတယ် (y) သည်

အကယ်. ရပ်တန့်

နောက်တစ်ခု

concode = CCode

erout:

Debug.Print Err.Description

DoCmd.Echo စစ်မှန်သော

အဆုံးရာထူးအမည်

ပုဂ္ဂလိက Sub addamnt_AfterUpdate () တစ်ဦးချင်းစီကိုလယ် updated ပြီးနောက် 'ဆိုတဲ့ SetConCode function ကို Run

SetConCode

အဆုံး Sub

ပုဂ္ဂလိက Sub aggdate_AfterUpdate ()

SetConCode

အဆုံး Sub

ပုဂ္ဂလိက Sub Cntname_AfterUpdate ()

SetConCode

အဆုံး Sub

ပုဂ္ဂလိက Sub EMR_AfterUpdate ()

SetConCode

အဆုံး Sub

ပုဂ္ဂလိက Sub Form_Open (Integer အမျှ Cancel)

ပုံစံနေ့စွဲတန်ဖိုးများကိုစစျဆေးဖို့ဖွင့်လှစ်ခဲ့တာဖြစ်ပါတယ်အခါ concode တန်ဖိုးများ setting အားလုံးမှတ်တမ်းများမှတဆင့် '' Loop ။

Integer အဖြစ်က x မှိန်

x က = 1

Set ဖမ်းယူရေး = Me.Recordset.Clone

rec.MoveLast

rec.RecordCount အကယ်. = 0 ထိုနောက်

MsgBox "Found NO မှတ်တမ်း"

အကယ်. ရပ်တန့်

rec.MoveFirst

DoCmd.GoToRecord acDataForm "CondCodes" acFirst

rec.RecordCount ရန်က x = 1 – 1

x = rec.RecordCount အကယ်. ထိုအခါ

Goto getoutloop

အခြားသူ

SetConCode

DoCmd.GoToRecord acDataForm "CondCodes" acNext

အကယ်. ရပ်တန့်

နောက်တစ်ခု

getoutloop:

rec.Close

အဆုံး Sub

ပုဂ္ဂလိက Sub set_Click ()

အဆိုပါ concode တန်ဖိုးများ setting အားလုံးမှတ်တမ်းများမှတဆင့် '' Loop

Integer အဖြစ်က x မှိန်

x က = 1

Set ဖမ်းယူရေး = Me.Recordset.Clone

rec.MoveLast

rec.RecordCount အကယ်. = 0 ထိုနောက်

MsgBox "Found NO မှတ်တမ်း"

အကယ်. ရပ်တန့်

rec.MoveFirst

DoCmd.GoToRecord acDataForm "CondCodes" acFirst

rec.RecordCount ရန်က x = 1 – 1

x = rec.RecordCount အကယ်. ထိုအခါ

Goto getoutloop

အခြားသူ

SetConCode

DoCmd.GoToRecord acDataForm "CondCodes" acNext

အကယ်. ရပ်တန့်

နောက်တစ်ခု

သင်ကပိတ်ထားလျှင် '' DoCmd.Echo စစ်မှန်သော '' အလှည့်အပေါ်ပြန် echo

getoutloop:

rec.Close

အဆုံး Sub

ပုဂ္ဂလိက Sub wcompamnt_AfterUpdate ()

SetConCode

အဆုံး Sub

ပုဂ္ဂလိက Sub wcompdate_AfterUpdate ()

SetConCode

အဆုံး Sub

————– ဤတွင် Cut

သငျသညျကို Microsoft Dao 3.6 ပါဝင်သည်ဖို့ VBA ကိုးကားသတ်မှတ်ထားရန်လိုအပ်ပါလိမ့်မယ်။ ဤသည်ကိုသင် VBA အယ်ဒီတာပွင့်လင်းကြသည့်အခါ toolbar ကိုအပေါ်ပြုမိသည်။ Tools များ / ကိုးကားရှာဖွေပါ။ ရည်ညွှန်း window ကိုဖွင့်လှစ်သောအခါမိုက်ကရိုဆော့ဖ Dao 3.6 ကိုကိုးကားဆင်း scroll ကြောင့်စစ်ဆေးပါ။ ဒီဥပမာ Access ကို 2002 နှင့်အတူဖန်တီးခဲ့ပေမယ့် Access ကို 2003 မှ Access ကို 2000 နှင့်အတူလုပ်ကိုင်ဆောင်ရွက်သင့်သည်တူညီသောအရာပြီးမြောက်ဖို့ပိုကောင်းနည်းလမ်းများရှိကောင်းရှိနိုင်ပါသည်, သို့သော်ဤသည်ငါတို့အဘို့ကောင်းကောင်းအလုပ်လုပ်ပါတယ်။ ဒါကလုပ်သင့်ပါတယ်။ ဤသူသည်သင်တို့မပါဘဲသင့်ရဲ့ဒေတာဘေ့စ applications များသတ်မှတ်ထားကူညီရန်နှင့်သင့်သည်အသုံးပြုသူများကိုပိုမိုချင်အောင်နိုငျသောအစွမ်းထက်နှင့်တန်ဖိုးရှိသောအစွန်အဖျားကြောင်းသတိပြုပါ။ အဲဒါကိုအခွင့်ကောင်းယူပါ။ သင့်ရဲ့ SetConCode function ကိုအတွက်ကွဲပြားခြားနားသောယုတ္တိဗေဒထုတ်ပြန်ချက်များနှင့်အတူစမ်းသပ်နှငျ့သငျပွီးမွောကျနိုငျရာကိုကြည့်ပါ။



Source by Jon E. Watson

Comments are closed, but trackbacks and pingbacks are open.