مدیریت اطلاعات در فرم ها به کمک دکمه های کنترلی

مدیریت فرم ها در اکسس با استفاده از دکمه ها موضوع آموزشی است که می خواهیم امروز به آن بپردازیم.

ما از دکمه ها در داخل اکسس در دو محیط می توانیم استفاده کنیم .

محیط اول فرم ها هستند و  محیط دوم گزارش ها .

اما هدف ما از  استفاده از دکمه ها در محیط اکسس چیست؟

ما  دکمه ها را داخل یک فرم و یا گزارش خود قرار می دهیم تا به کمک آنها خیلی از کارهایی را که باید در طی چند مرحله به انجام دهیم را تنها با استفاده از یک کلیک ساده بر روی دکمه مورد نظر به انجام برسانیم .

بگذارید یک مثال ساده بزنم .

فرض کنید که شما فرمی دارید که اطلاعات مربوط به یک جدول را برای شما نمایش می دهد .

حالا بنا به هردلیل می خواهید اطلاعات یک رکورد خاص را از جدول خود حذف کنید . 

خوب برای این کار باید مراحل زیر را دنبال کنید .

–  اول باید به سراغ جدول مورد نظر بروید و آن را باز کنید .

–  باید از بین رکوردهای مختلف رکورد مورد نظر را پیدا کنید و آن را انتخاب کنید .

–  در انتها هم  باید رکورد مورد نظر را حذف کنید .

نمی دانم انجام دادن این سه مرحله برای شما چقدر طول می کشد .

۳۰ ثانیه …….. ۱۵ ثانیه ………. یا شاید هم کمتر از اینها .

اما هرچه هم که این زمان کم باشد مطمئنا کمتر از این نخواهد بود که شما یک دکمه روی فرم خود بگذارید و فقط با یک کلیک بر روی این دکمه کار حذف اطلاعات رکورد جاری خود را انجام دهید .

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

چگونه با استفاده از دکمه ها به مدیریت فرم ها در اکسس بپردازیم؟

یکی از مهمترین کارهایی که به کمک دکمه ها می توانیم انجام بدهیم مدیریت کردن اطلاعات فرم ها می باشد .  نگاهی به این لیست بکنید :

۱- رفتن به رکورد بعدی

۲- رفتن به رکورد قبلی

۳- ایجاد یک رکورد جدید

۴- حذف یک رکورد

۵-رفتن به آخرین رکورد

۶-رفتن به اولین رکورد

این لیستی از کارهایی است که می توانیم به کمک دکمه ها انجام دهیم .

اما چه جوری باید این کار را انجام دهیم و چه تنظیماتی برای این کار لازم است .

خوب برای این کار باید دو تا مرحله را انجام بدهیم .

– مرحله اول اینکه دکمه مورد نظر خود را ایجاد کنیم .

– مرحله دوم تنظیم اینکه هر دکمه با کلیک کردن چه کاری را باید انجام بدهد .

خوب از مرحله اول کار خودمون رو شروع می کنیم . 

ایجاد دکمه ها ی مدیریتی روی یک فرم

من فرمی دارم که اطلاعات مربوط به یک جدول را به من نمایش می دهد و از طریق همین فرم هم می توانم اطلاعات مورد نظر خود را وارد جدول مربوطه کنم .

مدیریت فرم ها در اکسس

برای مدیریت فرم  در اکسس و اطلاعاتی  که در آن نمایش داده می شود  می خواهم از چند دکمه استفاده کنم .

در قدم اول باید دکمه های مورد نظر خود را بر روی فرم قرار دهیم .

برای این کار باید فرم خود را در محیط طراحی قرار دهیم.

بعد از داشبورد controls  بر روی آیکون مربوط به دکمه یا همان command button  کلیک کنید .  

مدیریت فرم ها در اکسس

حالا در محلی که مورد نظر شماست یک کلیک کنید تا این دکمه بر روی فرمتان قرار گیرد .

به همین راحتی توانستید  یک دکمه را  ایجاد و بر روی فرم خود قرار دهید .

اما قبل از اینکه به سراغ مرحله بعد بخواهیم برویم اجازه بدهید یکسری تغییرات در شکل و شمایل دکمه خود  بدهیم . 

اولین کار این است که یک نام مناسب برای دکمه خود انتخاب کنیم .

این نام قرار است در محیط کد نویسی مورد استفاده قرار گیرد .

برای تعیین نام یک دکمه بهتر است موارد زیر را مد نظر قرار دهیم. 

اول اینکه نامی را انتخاب کنیم که متناسب با کاری است که قرار است این دکمه برای ما انجام دهد .

مثلا اگر قرار است این دکمه فرم ما را ببندد من  نام cmd_close  را برای آن انتخاب می کنم .

 یا اینکه اگر قرار است با کلیک بر روی این دکمه رکورد بعدی را به من نمایش دهد ترجیح می دهم نام آن را cmd_nextrecord  را برای آن انتخاب کنم .

این نام گذاری دو بخش  دارد که توسط یک زیر خط از هم جدا می شوند  .

بخش اول که  مخفف کلمه command  است و اشاره می کند که این شی از نوع command button  است   . 

در بخش دوم هم مشخص می کنیم این دکمه چه کاری را قرار است برای ما انجام دهد .

البته این نحوه نام گذاری کاملا اختیاری و سلیقه ای است اما  فراموش نکنید که یک برنامه نویس حرفه ای باید در تمام زمینه ها حرفه ای عمل کند .

مشخصه بعدی که باید آن را تغییر بدهیم Caption  دکمه مربوطه می باشد .

Caption  یک عنوان است  بر روی دکمه قرار می گیرد و  قرار است به کاربر نمایش داده شود .

خوب مطمئنا این عنوان هم باید به گونه ای باشد که کاربر با نگاه کردن به آن متوجه شود که این دکمه قرار است چه کاری را برایش انجام دهد .

انجام سایر تغییرات هم مثل رنگ دکمه و فونت نوشته و یا سایز دکمه را هم از مواردی است که می توان انجام داد .

برای انجام تمامی این تغییرات کافی است که دمه خود را به حالت انتخاب در آورید .

سپس از کادر Property Sheet  به هر کدام از این آیتم ها دسترسی پیدا کنید  و آنها را تغییر دهید .

 

مدیریت فرم ها در اکسس

به همین روش می توانید سایر دکمه های مورد نظر خود را ایجاد کنید و آنها را در محل مناسب خود قرار دهید . 

بعنوان نمونه به فرم من توجه کنید .

مدیریت فرم ها در اکسس.

در اینجا  من تام دکمه های مورد نظر خود را روی فرم قرار داده ام . 

حالا نوبت این است که تعیین کنیم که با کلیک کردن روی هر کدام از این دکمه ها  آن دکمه خاص چه کاری را برای ما انجام دهد .

 خوب برای این کار سه روش وود دارد که در اینجا به هر سه این روش ها می پردازیم .

هر چند که انجام این روش ها در  اجرا متفاوت است اما همه آنها یک نتیجه یکسان خواهند داشت .

روش های مختلف تنظیم عملکرد دکمه ها در اکسس

روش اول استفاده از قابلیت Wizard

اگر دقت کنید احتمالا بعد از قرار دادن هر دکمه بر روی فرم بلافاصله اکسس یک پنجره را به شما نمایش می دهد .

این پنجره مربوط به تعیین عملکرد دکمه مورد نظر با استفاده از قابلیت Wizard می باشد .

مدیریت فرم ها در اکسس

خوب این پنجره خیلی واضح و روشن از شما می پرسد که وقتی که کاربر روی این دکمه کلیک کرد اکسس باید چه کاری را انجام دهد .

بعنوان مثال من از طریق دکمه “بعدی ” که روی فرم قرار دارد وارد این پنجره شدم. 

همانطور که از عنوان دکمه هم برمی آید می خواهم با کلیک کردن بر روی دکمه رکورد بعدی به من نمایش داده شود .

خوب از کادر سمت چپ گزینه Record Navigation  و از کادر سمت راست هم گزینه Go To Next Record  را انتخاب می کنم .

بعد بر روی دکمه Next  کلیک می کنم تا پنجره زیر به من نمایش داده شود .

 

مدیریت فرم ها در اکسس

خوب در این پنجره هم تعیین می کنیم که بر روی دکمه ما که عنوان نوشته شود یا اینکه به جای متن یک تصویر را قرار دهیم .

و در پنجره آخر هم می توانیم یک نام برای این دکمه خود تعیین کنیم .

مدیریت فرم ها در اکسس

و در نهایت هم که روی دکمه Finish کلیک می کنیم و تمام .

همین روش را برای سایر دکمه ها هم می توانید بکار ببرید و متناسب با نام هر دکمه عملکرد مناسب را برای آن تعریف کنید .

اما اجازه دهید به یک  نکته هم اینجا ذکر کنم :

آن هم اینکه اگر  دکمه خود را بر روی فرم قرار دادید ولی پنجره مذکور بلافاصله برای شما به نمایش در نیامد این بخاطر این است که شما هم مثل من خواسته یا ناخواسته  قابلیت اجرای خودکار آن را غیر فعال کرده اید .

در این صورت می توانید تنظیمات را مثل آن چیزی که در ابتدای کار مشاهده کردید از طریق کادر Property sheet  انجام دهید .

اما اگر می خواهید این قابلیت را فعال کنید فقط کافی است بر روی گزینه Use Control Wizard  کلیک کنید تا این قابلیت برای شما فعال شود .

 

مدیریت فرم ها در اکسس

این ساده ترین و در عین حال راحت ترین راهی است که می توان با استفاده از آن به تعریف عملکرد هر کدام از این دکمه ها بپردازیم .

اما برویم به سراغ روش دوم .

تنظیم عملکرد دکمه ها با استفاده از ماکروها .

ماکرو ها هم از آن دست قابلیت های کاربردی نرم افزار اکسس هستند که کمتر شناخته شده اند اما کاربردهای بسیار زیادی دارند .

امروز بهانه ای شد که با هم بتوانیم به استفاده از یکی از این قابلیت ها بپردازیم .

در روش قبلی ما  عملکرد دکمه با عنوان  ”  بعدی ” را  تنظیم کردیم .

در این مرحله می خواهیم عملکرد دکمه با عنوان ” قبلی ” را با استفاده از ماکروها تعیین کنیم به گونه ای که وقتی بر روی این دکمه کلیک کردیم اطلاعات رکورد قبلی به ما نمایش داده شود .

پس با هم همراه شویم تا این کار را با کمک ماکروها انجام دهیم :

۱- اول دکمه مربوط به “قبلی ” را به حالت انتخاب درآورید و در پنجره Property Sheet  به سربرگ Event بروید .

در این پنجره  در رویداد On Click  بر روی آیکون سه نقطه مقابل کلیک کنید تا پنجره زیر برای شما نمایش داده شود . 

 

مدیریت فرم ها در اکسس

۲- در این پنجره گزینه اول یعنی Macro Builder  را انتخاب و بر روی دکمه OK  کلیک کنید .

با این کار وارد محیط ماکروها می شوید

۳- در این محیط یک کمبو باکس مشاهده می کنید .

این کمبو باکس را باز کرده و به دنبال گزینه ای به نام Go To Record  بگردید.

 

مدیریت فرم ها در اکسس

 

۴٫ وقتی این گزینه را انتخاب کردید بلافاصله وارد محیط زیر می شوید .

مدیریت فرم ها در اکسس

در اینجا باید تنظیمات لازم را  به ترتیب زیر انجام دهید.

 

 در کادر اول تعیین می کنید که دکمه شما در کدام از یک از اشیای موجود در بانک اطلاعاتی شما قرار دارد چون در اینجا دکمه ما در داخل فرم ما می باشد بنابراین شی Form  را انتخاب می کنیم   . 

در کادر دوم هم نام فرمی را که دکمه ما در آن قرار دارد را انتخاب می کنیم .

در کادر سوم هم تعیین می کنیم که با کلیک کردن بر روی دکمه ما چه کاری انجام شود .

اینجا هدف ما این است که با کلیک بر روی دکمه مربوطه اطلاعات رکورد قبلی برای ما نمایش داده شود .

این روشی است که به کمک ماکروها می توانیم عملکرد دکمه های خود را مشخص کنیم .

قاعدتا روش کار برای سایر دکمه ها هم به همین منوال می باشد فقط تنها تفاوت در تعیین نوع کاری است که برای هر دکمه تعیین می کنیم که باید متفاوت از سایر دکمه ها باشد  که این کار را هم در  کادر سوم تعیین می کنیم .

حالا برویم به سراغ روش سوم برای مدیریت فرم ها در اکسس.

تعیین عملکرد دکمه ها با استفاده از کد نویسی  VBA

بهترین راهکار برای تعیین عملکرد دکمه ها استفاده از کدنویسی و کدهای VBA  می باشد .

البته به شرط اینکه با نحوه نوشتن کد ها و در کل برنامه نویسی VBA  آشنا باشیم .

البته این کد نویسی قرار نیست کار چندان سخت و پیچیده ای باشد .

در ادامه با من همراه باشید تا متوجه سادگی این کار شوید .

یکی از دستورات پرکاربرد در کد نویسی VBA  دستور DOcmd  می باشد . 

با استفاده از این دستور می توانیم کارهای زیادی را انجام دهیم .

یکی از این کارها  هم که در اینجا تعیین عملکرد دکمه ها می باشد .

خوب برای شروع کار بر روی دکمه با عنوان ”  بعدی ”  کلیک کنید تا فعال شود

سپس در پنجره Property Sheet  به سربرگ Event بروید .

در این پنجره  در رویداد On Click  بر روی آیکون سه نقطه مقابل  آن کلیک کنید تا پنجره Choose Builder برای شما نمایش داده شود . 

 این بار در این پنجره آخرین گزینه یعنی Code Builder  را انتخاب کنید .

با این کار وارد محیط کد نویسی شده و رویدادی تحت عنوان On -click  برای شما نمایش داده می شود .

اول از همه دستور docmd را بنویسید و بعد از آن یک نقطه بگذارید .

بلافاصله لیستی از انتخاب ها برای شما باز می شود .

گزینه GotoRecord  را انتخاب کنید . 

حالا کافی است یک فاصله ایجاد کنید تا آرگومانهای مورد نظر این دستور برای شما نمایش داده شود . 

البته تمامی این آرگومانها اجباری نیست اما آنهایی را که باید تنظیم کنید شامل موارد زیر است : 

اول که نوع شی مورد نظر خود را تعیین کنید که همان acdataForm  است . 

بعد هم که نام فرم مورد نظر خودمان را وارد می کنیم.

در آخر هم که باید نوع کار مورد نظر خود مان را انخاب کنیم .

همه این مراحل را هم که در تصویر زیر می توانید مشاهده کنید .  

 

مدیریت فرم ها در اکسس

حالا برویم به سراغ چند نکته :

نکته اول اینکه دقت کردید که روش انجام این کار دقیقا مشابه کاری بود که ما با ماکروها انجام دادیم .

یعنی تک تک مراحلی را که در محیط ماکروها و به کمک محیط گرافیکی انها انجام دادیم را در محیط برنامه نویسی با استفاده از کدهای VBA  انجام دادیم . آیا کار سختی بود ؟

مطمئنا نه .

فقط کافی است که در درجه اول خودمان بدانیم که چه کار می خواهیم بکنیم و در درجه دوم چگونه و با استفاده از چه دستوراتی کار مورد نظر خود را برای برنامه تعریف کنیم . 

به همین راحتی .

اینجاست که می گوییم برنامه نویسی اصلا کار سخت و مشکلی نیست .

و اما نکته دوم اینکه در مورد آرگومان دوم وقتی می خواهیم نام فرم خود را به تابع بدهیم حتما باید آن را در داخل دو علامت ”  ” قرار بدهیم .

برای مابقی دکمه ها هم که روش کار کاملا شبیه همین دکمه است فقط در مرحله آخر و آرگومان آخری که تعیین می کنیم نوع کار مورد نظر را مشخص می کنیم .

لیست این آرومانها بصورت زیر است :

acprevious :برای رفتن به رکورد قبلی بر روی فرم

aclast: برای رفتن به آخرین رکورد موجود در جدول و نمایش آن بر روی فرم 

acfirst: برای رفتن به اولین رکورد موجود در جدول و نمایش آن بر روی فرم 

acNewrecord: برای ایجاد یک رکورد جدید و درج اطلاعات تازه در جدول از طریق فرم جاری 

اگر که دقت کنید ما در روی فرم خود ۵ دکمه داشتیم که با کمک دستور Docmd  می توانیم برای هر کدام از آنها عملکرد مختص آنها را تعریف کنیم .

فقط می ماند دکمه ای به نام “حذف اطلاعات ” که باید برای آن هم یک وظیفه مشخص کنیم .

خوب اول بیایید بدانیم که چه کاری می خواهیم بکنیم .

می خواهیم وقتی بر روی دکمه با عنوان حذف کتاب کلیک کردیم اطلاعات مربوط به کتابی که در حال حاضر به بر روی فرم  ما نمایش داده می شود از جدول حذف شود . 

چگونه باید این کار را انجام دهیم .

برای انجام این کار هم مجددا از شی Docmd   استفاده می کنیم اما این بار به جای متد قبلی به سراغ متد دیگری تحت عنوان RunCommand  می رویم .

 

یک نکته را هم اینجا بگویم وان هم اینکه با استفاده از همین متد RunCommand در مدیریت فرم ها در اکسس  هم می توانیم تمامی کارهایی را که با با استفاده از متد GoToRecord  انجام دادیم را برای دکمه های خود انجام دهیم .

البته به این مطلب در فیلم آموزشی که در انتهای همین صفحه مشاهده می کنید اشاره کرده ام .

پس خیلی ساده و راحت به کمک کدهای VBA  توانستیم عملکرد مورد نظر خودمان را برای هر کدام از این دکمه ها تعیین کنیم این هم روش دیگری بود که به کمک آن توانستیم برای دکمه های خود عملکردهای مورد نظر خود را تعیین کنیم .

اما بغیر از این روش هایی که در اینجا بررسی کردیم روش دیگری هم وجود دارد و آن هم اینکه بیاییم و برای هر عملکرد یک تابع تعریف کنیم .

خود من این روش را بهترین و مفیدترین روش برای این منظور می دانم .

اما اینکه چگونه این توابع را تعریف کنیم  و از آنها در مدیریت فرم ها در اکسس استفاده کنیم و اینکه چرا این روش را مناسبترین روش می دانم چیزی است که می توانید با مشاهده ویدیوی زیر به آن پی ببرید .

 

 

 

اینها مجموعه ای از موارد و روش هایی بودند که به کمک آنها می توانیم به مدیریت فرم ها در اکسس بپردازیم .

.

 

 

آموزش اکسس بازدید : 1,720 views 26 نوامبر, 2019 ۰