כיצד להשתמש בהצהרה על Select Case ב- VBA? (דוגמאות)

הצהרת מקרה של Excel VBA בחר

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

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

הֶסבֵּר

קבוצות שונות של הצהרות משמשות במקרה בחר. יש לעקוב אחר התחביר הבא בכדי להשתמש בו בצורה יעילה. זה דומה להצהרת המתגים המוצגת בשפות תכנות אחרות כגון Java, C # ו- PHP.

 בחר ביטוי [מקרה] לבדיקה [מקרה] רשימת הצהרות ביטוי (מקרה 1, מקרה 2, מקרה 3 וכן הלאה ...) מקרה אחר (הצהרות אחרות) סוף בחר 

ההסבר למונחים המשויכים למקרה הנבחר ניתן כדלקמן

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

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

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

כיצד להשתמש בהצהרת מקרה VBA בחר?

תכונת המקרה הנבחר המסופקת על ידי ה- VBA אינה פועלת בגליונות העבודה הרגילים. עלינו להשתמש באפשרות Visual Basic בכרטיסיה מפתח. פונקציות וקידוד מוגדרים על ידי המשתמש שנוצרו במצב המפתח להפעלת היישומים הקטנים השונים בתחום העסקי.

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

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

דוגמה מס '1 - הצהרת מקרה פשוט בחר

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

קוד:

תת-משנה Selcaseexmample () עמעום A כשלם A = 20 בחר מקרה A מקרה 10 MsgBox "המקרה הראשון תואם!" מקרה 20 MsgBox "המקרה השני תואם!" מקרה 30 MsgBox "התיק השלישי תואם בתיק בחר!" מקרה 40 MsgBox "התיק הרביעי תואם בתיק בחר!" מקרה אחר MsgBox "אף אחד מהתיקים אינו תואם!" סיום בחר סוף משנה

תוֹצָאָה:

ארבע הצהרות מקרה והצהרת מקרה אחר משמשות להשוואה בין ביטוי המבחן למקרים שונים. בדוגמה הנוכחית, המקרה השני מותאם כמשתנה A תואם 20.

דוגמה מס '2 - מילת מפתח' אל 'לבדיקת ציונים

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

קוד:

פרטית תת-סלקט-דוגמה () עמעום סימני סטודנטים כסימני סטודנטים שלמים = InputBox ("הזן סימנים בין 1 ל -100?") בחר תלמידי מקרה תלמידים מקרה 1 עד 36 MsgBox "נכשל!" מקרה 37 עד 55 MsgBox "C כיתה" מקרה 56 עד 80 MsgBox "B כיתה" מקרה 81 עד 100 MsgBox "A כיתה" מקרה אחר MsgBox "מחוץ לטווח" סוף בחר סוף משנה

תוֹצָאָה:

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

הפלט מוצג עם תיבת הודעות כפי שמוצג בצילום המסך שלמעלה.

דוגמה 3 - שימוש במילת המפתח 'האם' עם מקרה נבחר

דוגמה זו מדגימה את השימוש במילת המפתח 'האם' עם המקרה הנבחר.

קוד:

 Sub CheckNumber() Dim NumInput As Integer NumInput = InputBox("Please enter a number") Select Case NumInput Case Is = 200 MsgBox "You entered a number greater than or equal to 200" End Select End Sub 

‘Is’ keyword helps to find the matched values with only case statements. It compares test expression with given input to produce the output.

The output is obtained as shown in the figure if the entered value is more than 200

Example #4 – With Command Button to Change the Values

The select case also used with the Command button by creating a macro.

Code:

 Sub color() Dim color As String color = Range("A1").Value Select Case color Case "Red", "Green", "Yellow" Range("B1").Value = 1 Case "White", "Black", "Brown" Range("B1").Value = 2 Case "Blue", "Sky Blue" Range("B1").Value = 3 Case Else Range("B1").Value = 4 End Select End Sub 

As shown in the program, the input is taken from the cells of the worksheet. The program is executed after clicking on the command button used from ActiveX controls. In this, a comma separator is used to combine the test expressions.

When the value in the Cell A1 changed, it results in a change in the B1 cell also by running the excel macro through the command button. You can refer to the screenshot given below:-

Example #5 – Check a Number Odd or Even

This example to help to check a number is even or odd.

Code:

 Sub CheckOddEven() CheckValue = InputBox("Enter the Number") Select Case (CheckValue Mod 2) = 0 Case True MsgBox "The number is even" Case False MsgBox "The number is odd" End Select End Sub 

The coding is developed as shown in the screenshot and output is displayed as follows when even number is entered.

Example #6 – Nested Select Case Statements

Nesting is a useful feature of the select case and the way how it is done is shown.

Code:

 Sub TestWeekday() Select Case Weekday(Now) Case 1, 7 Select Case Weekday(Now) Case 1 MsgBox "Today is Sunday" Case Else MsgBox "Today is Saturday" End Select Case Else MsgBox "Today is a Weekday" End Select End Sub 

Here the select case is defined inside another select case to test a day, weekday, or weekend. Except case 1 and 7 remaining all are weekdays (Note: case 1 is Sunday and case 7 is Saturday)

Things to Remember

  • The ‘Is’ keyword using in the statement of [case] and [case else] are not equal.
  • ActiveX control should be used in executing program through a command button taking input and displaying output in the excel sheet range of cells.
  • It is hard to run the programs in VBA if macros are disabled and always enable Macros to get best results.
  • VBA is a case sensitive and input should be entered accurately to get better results.