دسترسی سریع

لینکهای مفید

دانلود آفیس باز

ثبت اطلاعات توسط فرم در اکسل و نکات مهم

اشراف به ثبت اطلاعات توسط فرم در اکسل چه ضرورتی دارد ؟ نیازهای شرکتها و افراد مختلف همیشه متفاوت بوده و خیلی کم پیش می آید که یک نرم افزار ثالت تمام نیازها را برآورده کند ، به همین دلیل اگر استانداردهای ورود اطلاعات توسط فرم را بدانیم می توانیم در مواقع مختلف به راحتی از آن بهره ببریم.

در اینجا مثالی را مطرح و حل می کنیم که به میزان خیلی زیادی در تمام پروژه ها لازم است و مورد استفاده قرار میگیرد.

نیازهای مشترک زمان استفاده از فرم در اکسل

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

  1. به دست آوردن اولین سلول خالی در ستون مورد نظر 
  2. ایجاد پیغامهای مناسب زمان خطاهای کاربر
  3. جستجو در اطلاعات و لیست باکس و دراپ باکس

در مثالی که در ادامه ارائه میدهیم سعس کرده ایم که این موارد را لحاظ کنیم تا بتوانید در پروژه های خود با کمی تغییر از آن استفاده کنید .

فرم در اکسل

در تصویر بالا مشاهده می کنید که دو شیت داریم که یکی Data و دیگری Sheet1 است و در شیت اول داده های مرجع ما وارد شده و در واقع باید در شیت دوم هنگام ورود اطلاعات با فرم از آنها استفاده شود . در واقع لیست پائین افتادنی و یا لیست باکس شامل این داده ها به صورت داینامیک داشته باشیم . که البته در این مورد تابع OFFSET را داشته ایم و مفصل آموزش داده ایم ، اما اینجا می خواهیم کاری کامل تر انجام دهیم 👌👍

ثبت اطلاعات با فرم در اکسل

شرح مثال برای ایجاد فرم در اکسل

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

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

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

خب این فرم در اکسل باید باکس جستجو هم داشته باشد ، چرا که احتمال دارد که نامها زیاد باشد و نیاز باشد که کاربر بین آنها جستجو کند که این جستجو در اکسل هم باید داینامیک باشد 

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

طرح اولیه فرم ثبت اطلاعات در اکسل

همانطور که در تصویر بالا می بینید ما 5 کنترل در فرم داریم که باید مطابق تصویر نامگذاری شوند ، البته می توانید فونت و رنگ و اندازه آن را تغییر دهید ولی نامها را به همین شکل نامگذاری کنید .

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

مراحل اصولی ایجاد اولین فرم در اکسل

شاید روشهای مختلفی در سطح وب توصیه شده باشد و آموزش داده شده باشد ، اما بنده بنا به تجربه و انجام پروژه های مختلف مراحل زیر را به عنوان بهترین و اصولی ترین روش قبول دارم.

  1. فایل خود را با پسوند XLSM ذخیره میکنیم .
  2. با زدن کلیدهای Alt + F11 وارد قسمت کدنویسی اکسل می شویم.
  3. در سمت چپ روی نام شیت کلیک راست میکنیم
  4. از گزینه Insert گزینه User Form را انتخاب میکنیم 

یک فرم در اکسل و حال طراحی با نام UserForm1 ایجاد می شود که در دوره آموزشی VBA به طور کامل اصول آن را توضیح داده ام ، اما اینجا قرار است بدون آشنایی فقط یک کار عملیاتی انجام دهیم و سپس در صورت علاقه و نیاز می تونید به صورت آکادمیک بحث VBA را دنبال کنید.

  1. فرم را مطابق تصویر بالا و ویدیو اول مطلب طراحی کنید .
  2. کدهای زیر را در بخش کد نویسی قرار دهید .
  3. توضیح تک تک بخشها در ابتدای مطلب و در ویدیوی آموزشی داده شده است.
Private Sub btnSave_Click()
    Dim lastRow As Long
    Dim currentTime As String
    
    ' چک کردن اينکه آيا هر دو ListBox داراي مقدار انتخاب شده هستند يا خير
    If lstName.ListIndex = -1 Or lstCustomer.ListIndex = -1 Then
        MsgBox "لطفاً از انتخاب مقدار در هر دو ليست باکس اطمينان حاصل کنيد."
        Exit Sub
    End If
    
    ' پيدا کردن آخرين رديف خالي در Sheet1
    lastRow = Sheets("Sheet1").Cells(Sheets("Sheet1").Rows.Count, "E").End(xlUp).Row + 1
    
    ' ذخيره‌سازي مقدارهاي انتخاب شده و زمان جاري
    Sheets("Sheet1").Cells(lastRow, "E").Value = lstName.Value
    Sheets("Sheet1").Cells(lastRow, "C").Value = lstCustomer.Value
    
    ' ذخيره زمان جاري به صورت hh:mm
    currentTime = Format(Now, "hh:mm")
    Sheets("Sheet1").Cells(lastRow, "F").Value = currentTime
    
    ' نمايش پيام موفقيت‌آميز و بستن فرم
    'MsgBox "اطلاعات با موفقيت ثبت شد."
    Unload Me
End Sub

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

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

4.7/5 - (4 امتیاز)
باکس دانلود

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

4 4 امتیازات
امتیاز این آموزش
دنبال کردن
اطلاع رسانی به
guest

5 نظرات
پر امتیاز ترین
جدیدترین قدیمی ترین
Inline Feedbacks
مشاهده همه دیدگاهها

دانلود رایگان !!

لطفا شماره موبایلی وارد کنید که روی آن واتس اپ دارید !!

بهتر است که شماره موبایل با واتس اپ فعال وارد کنید و از اخبار و تخفیف ها هم با خبر شوید ، در غیر اینصورت می توانید آدرس ایمیل وارد نمائید.

happy holidays

we want to hear from you

https://dl.officebaz.ir/free/excelLearning/OfficebazFirstCode.xlsm