Vba တွင် spreadsheets ကိုမည်သို့ရှာဖွေနည်း (ဥပမာများဖြင့်)
VBA ကို အသုံးပြု၍ Excel workbook တွင် စာရွက်များကို လမ်းညွှန်ရန် အောက်ပါနည်းလမ်းများကို အသုံးပြုနိုင်သည်။
နည်းလမ်း 1- စာရင်းဇယားများအားလုံးကို ကြည့်ရှုပါ။
SubLoopSheets ()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
ws.Range("A1").Value = 100
Next ws
End Sub
ဤအထူးသဖြင့် macro သည် workbook တစ်ခုစီရှိ စာရွက်တစ်ခုစီကိုဖြတ်၍ စာရွက်တစ်ခုစီ၏ cell A1 တွင် တန်ဖိုးကို 100 အဖြစ် သတ်မှတ်သည်။
နည်းလမ်း 2- သတ်သတ်မှတ်မှတ်များမပါဝင်ဘဲ အလုပ်စာရွက်များအားလုံးကို ရှာဖွေပါ။
SubLoopSheets ()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case Is = "Sheet2", "Sheet3"
'Do not execute any code for these sheets
Case Else
ws.Range("A1").Value = 100
End Select
Next ws
End Sub
ဤအထူးသဖြင့် macro သည် workbook တစ်ခုစီရှိ စာရွက်တစ်ခုစီကို လှည့်ပတ်ပြီး Sheet2 နှင့် Sheet3 ဟုခေါ်သော စာရွက်များ မှလွဲ၍ စာရွက်တစ်ခုစီ၏ cell A1 ရှိ တန်ဖိုးကို 100 အဖြစ် သတ်မှတ်သည်။
အောက်ဖော်ပြပါနမူနာများသည် စာရွက်အလွတ်လေးခုပါရှိသော Excel workbook ဖြင့် ဤနည်းလမ်းတစ်ခုစီကို လက်တွေ့အသုံးပြုနည်းကို ပြသသည်-
ဥပမာ 1- အလုပ်စာရွက်အားလုံးကို ရှာဖွေပါ။
ကျွန်ုပ်တို့၏အလုပ်စာအုပ်ရှိစာရွက်တစ်ခုစီရှိဆဲလ် A1 ၏တန်ဖိုးကို 100 နှင့်ညီစေရန်အောက်ပါ macro ကိုသုံးနိုင်သည်။
SubLoopSheets ()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
ws.Range("A1").Value = 100
Next ws
ဤမက်ခရိုကို ကျွန်ုပ်တို့လုပ်ဆောင်သောအခါ၊ အလုပ်စာအုပ်စာရွက်တစ်ခုစီရှိ ဆဲလ် A1 ၏တန်ဖိုးသည် 100 နှင့် ညီမျှလိမ့်မည်-
ဥပမာ 2- သတ်သတ်မှတ်မှတ်များမပါဝင်ဘဲ အလုပ်စာရွက်အားလုံးကို ရှာဖွေပါ။
Sheet2 နှင့် Sheet3 ဟုခေါ်သော စာရွက်များ မှလွဲ၍ စာရွက်တစ်ခုစီရှိ ဆဲလ် A1 ၏တန်ဖိုးကို 100 အဖြစ် သတ်မှတ်လိုသည်ဆိုကြပါစို့။
ဒါကိုလုပ်ဖို့ အောက်ပါ macro ကို ဖန်တီးနိုင်ပါတယ်။
SubLoopSheets ()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case Is = "Sheet2", "Sheet3"
'Do not execute any code for these sheets
Case Else
ws.Range("A1").Value = 100
End Select
Next ws
End Sub
ဤမက်ခရိုကို ကျွန်ုပ်တို့လုပ်ဆောင်သောအခါ၊ Sheet1 နှင့် Sheet4 သည် ဆဲလ် A1 တွင် 100 တန်ဖိုးရှိသည်ကိုတွေ့ရပါမည်။
သို့သော်၊ Sheet2 နှင့် Sheet3 သည် ဤစာရွက်များကို လျစ်လျူရှုရန် Case လုပ်ဆောင်ချက်ကို အသုံးပြုထားသောကြောင့် ဆဲလ် A1 တွင် တန်ဖိုးမရှိပါ။
ဤနမူနာများတွင်၊ ကျွန်ုပ်တို့သည် အလုပ်စာရွက်တစ်ခုစီကို ဖြတ်၍ ရိုးရှင်းလွယ်ကူစေရန်အတွက် ဆဲလ်တစ်ခုစီ၏တန်ဖိုးကို သီးခြားတန်ဖိုးတစ်ခုနှင့် တန်းတူသတ်မှတ်ထားကြောင်း သတိပြုပါ။
သို့သော်၊ သင်ဆန္ဒရှိပါက စာရွက်တစ်ခုစီရှိ ပိုမိုရှုပ်ထွေးသော လုပ်ဆောင်စရာများကို လုပ်ဆောင်ရန် For each statement နှင့် အလားတူ syntax ကို အသုံးပြုနိုင်သည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် VBA တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
VBA- အပိုင်းအခြားရှိ အတန်းအရေအတွက်ကို ရေတွက်နည်း
VBA- သီးခြားစာသားဖြင့် ဆဲလ်များကို ရေတွက်နည်း
VBA- COUNTIF နှင့် COUNTIFS လုပ်ဆောင်ချက်များကို ဘယ်လိုရေးရမလဲ