Vba- အလုပ်စာအုပ်တွင် စာရွက်အရေအတွက်ကို ရေတွက်နည်း
Excel ရှိ workbook တစ်ခုရှိ စာရွက်အရေအတွက်ကို ရေတွက်ရန် အောက်ပါနည်းလမ်းများကို အသုံးပြုနိုင်သည်။
နည်းလမ်း 1- လက်ရှိအလုပ်စာအုပ်ရှိ စာရွက်အရေအတွက်ကို ရေတွက်ပါ။
SubCountSheetsActive ()
Range(" A1 ") = ThisWorkbook.Worksheets.Count
End Sub
နည်းလမ်း 2- ဖွင့်ထားသော အလုပ်စာအုပ်တွင် စာရွက်အရေအတွက်ကို ရေတွက်ပါ။
SubCountSheetsOpen ()
Range(" A1 ") = Workbooks(" my_data.xlsx ").Sheets.Count
End Sub
နည်းလမ်း 3- ပိတ်ထားသော binder တွင် စာရွက်အရေအတွက်ကို ရေတွက်ပါ။
SubCountSheetsClosed ()
Application.DisplayAlerts = False
Set wb = Workbooks.Open(" C:\Users\Bob\Desktop\my_data.xlsx ")
'count sheets in closed workbook and display count in cell A1 of current workbook
ThisWorkbook.Sheets(1).Range(" A1 ").Value = wb.Sheets.Count
wb.Close SaveChanges:=True
Application.DisplayAlerts = True
End Sub
အောက်ဖော်ပြပါ ဥပမာများသည် ဤနည်းလမ်းတစ်ခုစီကို လက်တွေ့အသုံးချနည်းကို ပြသထားသည်။
ဥပမာ 1- လက်ရှိအလုပ်စာအုပ်တွင် စာရွက်အရေအတွက်ကို ရေတွက်ပါ။
ကျွန်ုပ်တို့တွင် အောက်ပါ Excel workbook ကိုဖွင့်ထားပြီး ၎င်းကိုကြည့်ရှုနေသည်ဟု ဆိုကြပါစို့။

ဤအလုပ်စာအုပ်ရှိ စာရွက်များ စုစုပေါင်းအရေအတွက်ကို ရေတွက်ပြီး ဆဲလ် A1 တွင် နံပါတ်ကိုပြသရန် အောက်ပါ macro ကို အသုံးပြုနိုင်သည်။
SubCountSheetsActive ()
Range(" A1 ") = ThisWorkbook.Worksheets.Count
End Sub
ကျွန်ုပ်တို့ ဤ macro ကို run သောအခါတွင်၊ ကျွန်ုပ်တို့သည် အောက်ပါ output ကို ရရှိသည် ။

ဆဲလ် A1 တွင် တန်ဖိုး 6 ပါဝင်ကြောင်း သတိပြုပါ။
ဤသည်မှာ ဤအလုပ်စာအုပ်တွင် စာရွက် ၆ ရွက်ရှိကြောင်း ကျွန်ုပ်တို့ကိုပြောပြသည်။
ဥပမာ 2- အဖွင့်ဖိုင်တွဲတစ်ခုရှိ စာရွက်အရေအတွက်ကို ရေတွက်ပါ။
စာရွက်နှစ်ရွက်ဖွင့်ထားသော my_data.xlsx ဟုခေါ်သော Excel workbook တစ်ခုရှိသော်လည်း ကျွန်ုပ်တို့ ၎င်းကို လောလောဆယ် မကြည့်ရသေးပါ။
ဤအလုပ်စာအုပ်ရှိ စာရွက်များစုစုပေါင်းကိုရေတွက်ရန်နှင့် လက်ရှိအလုပ်စာအုပ်၏ဆဲလ် A1 တွင် နံပါတ်ကိုပြသရန် အောက်ပါ macro ကို အသုံးပြုနိုင်သည်။
SubCountSheetsOpen ()
Range(" A1 ") = Workbooks(" my_data.xlsx ").Sheets.Count
End Sub
ကျွန်ုပ်တို့ ဤ macro ကို run သောအခါတွင်၊ ကျွန်ုပ်တို့သည် အောက်ပါ output ကို ရရှိသည် ။

ဆဲလ် A1 တွင် တန်ဖိုး 2 ပါဝင်ကြောင်း သတိပြုပါ။
၎င်းသည် my_data.xlsx ဟုခေါ်သော အဖွင့်အလုပ်စာအုပ်တွင် စာရွက် ၂ ရွက်ရှိကြောင်း ကျွန်ုပ်တို့ကိုပြောပြသည်။
ဥပမာ 3- ပိတ်ထားသော binder ရှိ စာရွက်အရေအတွက်ကို ရေတွက်ခြင်း။
ကျွန်ုပ်တို့တွင် my_data.xlsx ဟုခေါ်သော Excel workbook တစ်ခုရှိပြီး လောလောဆယ်မဖွင့်ရသေးသော်လည်း အောက်ပါဖိုင်တည်နေရာတွင်ရှိသော စာရွက်နှစ်ရွက်ပါရှိသည်ဆိုကြပါစို့။
C:\Users\Bob\Desktop\my_data.xlsx
ဤအလုပ်စာအုပ်ရှိ စာရွက်များစုစုပေါင်းကိုရေတွက်ရန်နှင့် လက်ရှိအလုပ်စာအုပ်၏ပထမစာရွက်၏ဆဲလ် A1 တွင် နံပါတ်ကိုပြသရန် အောက်ပါ macro ကို အသုံးပြုနိုင်သည်။
SubCountSheetsClosed ()
Application.DisplayAlerts = False
Set wb = Workbooks.Open(" C:\Users\Bob\Desktop\my_data.xlsx ")
'count sheets in closed workbook and display count in cell A1 of current workbook
ThisWorkbook.Sheets(1).Range(" A1 ").Value = wb.Sheets.Count
wb.Close SaveChanges:=True
Application.DisplayAlerts = True
End Sub
ကျွန်ုပ်တို့ ဤ macro ကို run သောအခါတွင်၊ ကျွန်ုပ်တို့သည် အောက်ပါ output ကို ရရှိသည် ။

ဆဲလ် A1 တွင် တန်ဖိုး 2 ပါဝင်ကြောင်း သတိပြုပါ။
၎င်းသည် my_data.xlsx ဟုခေါ်သော ပိတ်ထားသော အလုပ်စာအုပ်တွင် စာရွက် ၂ ရွက်ရှိကြောင်း ကျွန်ုပ်တို့ကို ပြောပြသည်။
မှတ်ချက် – ကုဒ်တွင်၊ Application.DisplayAlerts=False သည် ပိတ်ထားသော workbook ကိုဖွင့်ခြင်း၊ စာရွက်များကိုရေတွက်ပြီးနောက် workbook ကိုပိတ်ခြင်းလုပ်ငန်းစဉ်ကို မပြသရန် VBA အား ပြောထားသည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် VBA တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
VBA- အပိုင်းအခြားရှိ အတန်းအရေအတွက်ကို ရေတွက်နည်း
VBA- သီးခြားစာသားဖြင့် ဆဲလ်များကို ရေတွက်နည်း
VBA- COUNTIF နှင့် COUNTIFS လုပ်ဆောင်ချက်များကို ဘယ်လိုရေးရမလဲ