טופס משתמש VBA של Excel | כיצד ליצור טופס משתמש אינטראקטיבי?

טופס משתמש VBA של Excel

טופס משתמש ב- VBA הם טפסים מותאמים אישית שהוגדרו על ידי המשתמש אשר נועדו לקבל קלט ממשתמש בפורמט של טופס, יש לו קבוצות שונות של פקדים להוספה כגון תיבות טקסט, תוויות תיבות וכו 'כדי להנחות את המשתמש להזין ערך והוא שומר את הערך בגליון העבודה, לכל חלק בטופס המשתמש יש קוד ייחודי.

צורת משתמש היא אובייקט בממשק Excel ובתוך טופס משתמש זה, אנו יכולים ליצור תיבות דו-שיח מותאמות אישית אחרות כדי לקבל את הנתונים מהמשתמש. כשאתה עובד עם קובץ מאקרו שנוצר על ידי הבכיר שלך או שאולי יוריד מהאינטרנט אתה בטח ראית טופס משתמש כזה.

במאמר זה נראה כיצד ליצור טופס משתמש דומה לאחסון הנתונים מהמשתמש.

כיצד ליצור טופס משתמש?

כמו כיצד אתה מכניס מודול חדש באופן דומה, עליך ללחוץ על כפתור הוספה בעורך Visual Basic כדי להוסיף טופס משתמש.

אתה יכול להוריד תבנית Excel זו של VBA למשתמש כאן - תבנית Excel של VBA למשתמש

ברגע שתלחץ על זה, טופס המשתמש יוכנס גם הוא.

לפני שאגיד לך כיצד לתכנת זאת, הרשה לי להראות לך כיצד לעצב את צורת המשתמש הזו.

עיצוב טופס משתמש

על ידי בחירת צורת המשתמש הקש על מקש F4, הוא יראה לך את חלון המאפיינים.

באמצעות חלון מאפיינים זה אנו יכולים לעצב את צורת המשתמש הזו, אנו יכולים למנות אותה, אנו יכולים לשנות את הצבע, סגנון הגבול וכו '...

כמו זה נסה מאפיינים אחרים כדי לראות את צורת המשתמש.

עכשיו עבור ארגז הכלים הזה הוסף צורת משתמש.

כעת נראה ארגז כלים כזה.

ברגע זה טופס המשתמש פשוט מוכנס ולא מתוכנת. כדי לדעת איך זה עובד פשוט לחץ על כפתור ההפעלה, נראה את הטופס בגליון העבודה של Excel.

כעת השתמש בתווית הציור של ToolBox.

הזן את הטקסט כשם עובד בתוך התווית.

עבור תווית זו, כדי שנוכל לעצב באמצעות מאפיינים. כעת הזנו את הטקסט כ"שם עובד: "כעת אנו יכולים לראות זאת בחלון המאפיינים תחת כיתובים.

הכנס תווית אחת נוספת. כדי להוסיף תווית אחת נוספת, תוכלו ללחוץ על ארגז כלים או לגרור את התווית הנוכחית על ידי לחיצה על מקש Ctrl , יהיה לכם העתק של התווית הנוכחית.

עכשיו תהיה לנו אותה תווית.

שנה את השם לתעודת עובד.

כעת הכנס באופן דומה תווית נוספת ושמה "מחלקה".

עכשיו מארגז הכלים הכנס תיבת טקסט.

תן טקסט זה בשם EmpName בחלון המאפיינים.

כמו זה הכנס שתי תיבות טקסט נוספות מתוך מזהה עובד ומחלקה בהתאמה. תן שם לתיבות הטקסט לפי הכותרת שלהן.

באופן דומה, עשו זאת עבור המחלקה.

עכשיו מארגז הכלים הכנס את לחצן הפקודה.

שנה את שם כפתור הפקודה ל "SubmitButton" ושנה את הכיתוב ל "Submit".

הכנס לחצן אחד נוסף וקרא לו "ביטול".

עכשיו רק כדי לראות ריצה לחץ על כפתור ההפעלה או השתמש במקש F5 וראה איך נראה צורת המשתמש שלך ב- Excel.

עכשיו זה מגיע לצורה.

קוד VBA

כעת המשתמש יזין נתונים בזה, ולכן עלינו לתכנת זאת לאחסון הנתונים שהוזן על ידי המשתמש בטופס זה.

לחץ פעמיים על כפתור ההגשה, זה יוביל אותך לחלון המאקרו עם מאקרו שנוצר אוטומטית כמו להלן.

It says SubmitButton click, remember we had given a name for SUBMIT button as SubmitButton.

So, whenever we want to call this button we can call this by this name (submit button). Inside this macro copy and paste the below code.

Code:

 Private Sub SubmitButton_Click() Dim LR As Long LR = Cells(Rows.Count, 1).End(xlUp).Row + 1 Cells(LR, 1).Value = EmpName.Value Cells(LR, 2).Value = EmpID.Value Cells(LR, 3).Value = Dept.Value EmpName.Value = "" EmpID.Value = "" Dept.Value = "" End Sub 

  • EmpName.Value here EmpName is the text box name we had given while creating the employee name text box.
  • EmpID.Value here EmpID is the text box name of Employee ID text box.
  • Dept.Value this is department text box name.

So, on the click on submit button it will store the values in the mentioned cells.

Now double click on Cancel button, this will also show you the auto macro name like this.

Copy the below code and paste.

Code:

 Private Sub CancelButton_Click() MyUserForm.Hide End Sub 

MyUserForm is the name we had given to the userform. MyUserForm.Hide means on the click on the CANCEL button it will hide the userform.

Ok, now create a template like this in the worksheet.

Delete all the other sheets in the workbook except this template sheet.

Now go to Visual Basic Editor.

And run the macro using F5 key or manually, we will see user form in front of us.

Enter the employee name, employee id, and Department name.

Now if you click on the SUBMIT button, it will store the values on to the template we have created.

Like this you can keep entering the names, userform will keep storing the values entered by the user in the specified cells.

So by using USER FORM, we can actually create wonderful projects to get the information from the user.