بازدید: ٧٣۴

پیدا کردن مقدار حداقل و حداکثر در اکسس با استفاده از توابع DMax و DMin (آموزش پیشرفته اکسس)

 

بازگشت به صفحه اصلی آموزش پیشرفته اکسس

 

فرض کنیم جدولی از فروش اجناس داریم که مربوط به سال 2011 است، اکنون می خواهیم بیشترین و کمترین مقدار فروش ماه May را پیدا کنیم. اکسس از دو تابع برای انجام اینکار استفاده می کند که عبارتند از: DMax و DMin.

توابع DMax و DMin اساسا بازه ای از مقادیر را بررسی می کنند و به ترتیب بزرگترین و کوچکترین مقدار را برمی گردانند. نحوه نوشتن و استفاده از این دو تابع دقیقا شبیه به همان قالب مورد استفاده برای توابع DlookUp و DSum می باشد. البته در اینجا ما پارامترهایی داریم برای field name، همچنین بازه ای که فیلد شما به آن تعلق دارد( همانند جدول یا فرم پرس و جو) و یک شرط اختیاری (Criteria) که می توانیم از آن برای پیدا کردن برخی از رکوردهای خاص (همانند فروش ماه May) استفاده کنیم.

اجازه بدهید نگاهی به نحوه نوشتن توابع DMax و DMin بیاندازیم:

 

DMax("fieldName", "tableName", "criteria")

DMin("fieldName", "tableName", "criteria")

 

از جدول زیر برای بیان مثال خود استفاده می کنیم:

 

DMAx

 

اگر به خاطر داشته باشید می خواستیم کوچکترین و بزرگترین مقدار فروش در ماه May را پیدا کنیم. برای این منظور از نام فیلد Total بعنوان پارامتر اول و نام جدول tblOrders برای پارامتر دوم استفاده می کنیم. مقدار شرط را هم بصورت زیر بعنوان پارامتر سوم می نویسیم:

 

"OrderDate >= #05/01/2011# and OrderDate <= #05/31/2011#"

 

پارامتر سوم شبیه به یک دستور WHERE برنامه SQL است (البته بدون کلمه کلیدی WHERE) که از قالب تاریخ آمریکایی به جای قالب تاریخ بین المللی استفاده می کند. در زیر می توانید کل دستور مربوطه را مشاهده کنید:

 


DMin("Total", "tblOrders", "OrderDate >= #5/1/2011# and OrderDate <= #5/31/2011#")

 

در این مثال ما فرمی ایجاد کرده ایم که بر روی آن یک کادر متنی به نام txtResult و دو دکمه فرمانcmdMax و cmdMin وجود دارند. هنگامی که کاربر بر روی یکی از این دکمه های فرمان کلیک می کند، (بعنوان مثال دکمه cmdMax) پراسیجر VBA که حاوی تابع DMax می باشد، اجرا می شود و حداکثر مقدار فروش ماه May را محاسبه می کند و نتیجه را در txtResult نمایش می دهد.

 

DMIN

 

در زیر می توانید دستور VBA آن را مشاهده کنید:



Private Sub cmdMax_Click()
    Dim varMax As Currency
   varMax = DMax("Total", "tblOrders", "OrderDate >= #5/1/2011# and OrderDate <= #5/31/2011#") 
    Me!txtResult = varMax
End Sub


Private Sub cmdMin_Click()
    Dim varMin As Currency
    varMin = DMin("Total", "tblOrders", "OrderDate >= #5/1/2011# and OrderDate <= #5/31/2011#")
    Me!txtResult = varMin
End Sub



 

همانطور که مشاهده می کنید، هر سابروتین زمانی اجرا می شود که رویداد ONCLICK دکمه فرمان نظیر آن رخ بدهد. نتیجه بازگشتی توسط تابع در یک متغیر از نوع currency به نام varMax یا varMin ذخیره می شود. سپس مقدار txtResult برای نمایش نتیجه بر روی آن متغیر تنظیم می شود.

 

بازگشت به صفحه اصلی آموزش پیشرفته اکسس

 

طراحی سایت و سئو توسط ضابط