در پروژه های اکسس دسترسی به لیست Object های پروژه (جدول، پرس و جو، فرم و ...) نیاز مهمی می باشد. فرض کنید که می خواهید بر روی همه جداول پروژه نوع خواصی از تنظیمات را اعمال کنید. در این حالت باید با استفاده از یک حلقه، اشیاء مورد نظر را مرور کنید و تغییر مورد نظر را اعمال کنید. در این مقاله پنج سابروتین برای مرور جداول، پرس و جو ها، فرم ها و گزارش های فایل اکسس ارائه شده که هر یک از آنها، نتیجه را در قالب یک دستور Msgbox به شما اعلان می کند. نمونه ای از تصویر خروجی لیست پرس و جو ها :
1 - سابروتین زیر فهرست تمام جداول اعم از سیستمی و جداول غیر سیستمی را اعلان می کند:
Sub ListAllTables() Dim tbl As AccessObject, dB As Object Dim strMsg As String On Error GoTo Error_Handler Set dB = Application.CurrentData For Each tbl In dB.AllTables strMsg = strMsg & tbl.Name & vbNewLine Next tbl MsgBox strMsg Procedure_Done: Exit Sub Error_Handler: strMsg = Err.Number & " " & Err.Description Resume Procedure_Done End Sub
2 - سابروتین زیر تنها فهرست جداول غیر سیستمی را اعلان می کند:Sub ListAllTablesNotMSys() Dim tbl As AccessObject, dB As Object Dim strMsg As String On Error GoTo Error_Handler Set dB = Application.CurrentData For Each tbl In dB.AllTables If Not Left(tbl.Name, 4) = "MSys" Then strMsg = strMsg & tbl.Name & vbNewLine End If Next tbl MsgBox strMsg Procedure_Done: Exit Sub Error_Handler: strMsg = Err.Number & " " & Err.Description Resume Procedure_Done End Sub
3 - سابروتین زیر تنها فهرست تمام پرس و جو های ساخته شده در فایل اکسس جاری را اعلان می کند:Sub ListAllQueries() Dim strMsg As String Dim qry As AccessObject, dB As Object On Error GoTo Error_Handler Set dB = Application.CurrentData For Each qry In dB.AllQueries strMsg = strMsg & qry.Name & vbNewLine Next qry MsgBox strMsg Procedure_Done: Exit Sub Error_Handler: strMsg = Err.Number & " " & Err.Description Resume Procedure_Done End Sub
4 - سابروتین زیر تنها فهرست تمام فرم های ساخته شده در فایل اکسس جاری را اعلان می کند:Sub ListAllForms() Dim strMsg As String Dim frm As AccessObject, dB As Object On Error GoTo Error_Handler Set dB = Application.CurrentProject For Each frm In dB.AllForms strMsg = strMsg & frm.Name & vbNewLine Next frm MsgBox strMsg Procedure_Done: Exit Sub Error_Handler: strMsg = Err.Number & " " & Err.Description Resume Procedure_Done End Sub
5 - سابروتین زیر تنها فهرست تمام گزارش های ساخته شده در فایل اکسس جاری را اعلان می کند :Sub ListAllReports() Dim strMsg As String Dim rpt As AccessObject, dB As Object On Error GoTo Error_Handler Set dB = Application.CurrentProject For Each rpt In dB.AllReports strMsg = strMsg & rpt.Name & vbNewLine Next rpt MsgBox strMsg Procedure_Done: Exit Sub Error_Handler: strMsg = Err.Number & " " & Err.Description Resume Procedure_Done End Sub
0 نظر
تازه ترین ها