/ / Excel VBA תלוי תיבות משולבות

קופסאות משולבות

להלן נבחן תוכנית ב Excel VBA אשר יוצר Userform המכיל תיבות משולבות תלויות. Userform שאנחנו הולכים ליצור נראה כדלקמן:

המשתמש בוחר בעלי חיים מתוך רשימה נפתחת. כתוצאה מכך, המשתמש יכול לבחור חיה מתוך רשימה הנפתחת השני.

תיבות משולבות תלוי ב - VBA של Excel

המשתמש בוחר ספורט מתוך רשימה נפתחת. כתוצאה מכך, המשתמש יכול לבחור ספורט מתוך הרשימה הנפתחת השני.

תיבות משולבות תלוי ב - VBA של Excel

כדי ליצור Userform זה, בצע את השלבים הבאים.

1. פתח את עורך Visual Basic. אם סייר הפרויקטים אינו גלוי, לחץ על תצוגה, סייר פרויקט.

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

הגדרת מסך ב - Excel

3. הוסף את תיבות משולבות (הראשון בצד שמאל, השני בצד ימין) ואת לחצן הפקודה. לאחר השלמת פעולה זו, התוצאה צריכה להיות עקבית עם התמונה של Userform שמוצג קודם לכן. לדוגמה, ליצור שליטה תיבת משולבת על ידי לחיצה על ComboBox מתוך ארגז כלים. לאחר מכן, ניתן לגרור תיבת משולבת ב Userform.

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

5. כדי להציג את Userform, הצב לחצן פקודה בגליון העבודה והוסף את שורת הקוד הבאה:

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

עכשיו אנחנו הולכים ליצור את תת משתמשForm_Initialize. כאשר אתה משתמש בשיטת הצג עבור Userform, תת תתבצע באופן אוטומטי.

6. פתח את עורך Visual Basic.

7. בסייר הפרויקט, לחץ באמצעות לחצן העכבר הימני על UserForm1 ולאחר מכן לחץ על הצג קוד.

8. בחר Userform מהרשימה הנפתחת. בחר 'אתחול' מהרשימה הנפתחת.

9. הוסף את שורות הקוד הבאות:

Private Sub UserForm_Initialize()

With ComboBox1
    .AddItem "Animals"
    .AddItem "Sports"
    .AddItem "Food"
End With

End Sub

הסבר: שורות קוד אלה ממלאות את התיבה המשולבת הראשונה.

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

10. בסייר הפרויקט, לחץ לחיצה כפולה על UserForm1.

11. לחץ לחיצה כפולה על תיבת משולבת הראשונה.

12. הוסף את שורות הקוד הבאות:

Private Sub ComboBox1_Change()

Dim index As Integer
index = ComboBox1.ListIndex

ComboBox2.Clear

Select Case index
    Case Is = 0
        With ComboBox2
            .AddItem "Dog"
            .AddItem "Cat"
            .AddItem "Horse"
        End With
    Case Is = 1
        With ComboBox2
            .AddItem "Tennis"
            .AddItem "Swimming"
            .AddItem "Basketball"
        End With
    Case Is = 2
        With ComboBox2
            .AddItem "Pancakes"
            .AddItem "Pizza"
            .AddItem "Chinese"
        End With
End Select

End Sub

הסבר: Excel VBA משתמש בערך של המדד המשתנה כדי לבדוק כל משפט Case הבאים כדי לראות עם אילו פריטים התיבה משולבת השני צריך להיות מלא. עבור לתוכנית Select Select שלנו לקבלת מידע נוסף על מבנה Select Case.

13. לחץ לחיצה כפולה על כפתור ייבוא.

14. הוסף את שורת הקוד הבאה:

Private Sub CommandButton1_Click()

Range("A1").Value = ComboBox2.Value

End Sub

תוצאה:

תיבות משולבות תלוי ב - VBA של Excel

קרא גם: