/ / Excel VBA พึ่งพากล่องคำสั่งผสม

กล่องคำสั่งผสม Excel VBA ขึ้นอยู่กับ

ด้านล่างเราจะดูที่โปรแกรมมา Excel VBA ซึ่งสร้าง Userform ที่ประกอบด้วย กล่องคำสั่งผสมที่ขึ้นอยู่กับ. Userform ที่เราจะสร้างขึ้นมีลักษณะดังนี้:

ผู้ใช้เลือกสัตว์จากรายการแบบหล่นลง เป็นผลให้ผู้ใช้สามารถเลือกสัตว์จากรายการแบบหล่นลงที่สอง

กล่องคำสั่งผสมที่ขึ้นกับใน Excel VBA

ผู้ใช้เลือกกีฬาจากรายการแบบเลื่อนลง เป็นผลให้ผู้ใช้สามารถเลือกกีฬาจากรายการแบบหล่นลงแบบที่สองได้

กล่องคำสั่งผสมที่ขึ้นกับใน Excel VBA

ในการสร้าง Userform นี้ให้ทำตามขั้นตอนต่อไปนี้

1. เปิดตัวแก้ไข Visual Basic ถ้าโครงการ Explorer ไม่สามารถมองเห็นคลิกมุมมองโครงการ Explorer.

2. คลิกแทรก, Userform ถ้ากล่องเครื่องมือไม่ปรากฏขึ้นโดยอัตโนมัติให้คลิกมุมมองกล่องเครื่องมือ ควรตั้งค่าหน้าจอดังนี้

การตั้งค่าหน้าจอ Userform ใน Excel VBA

3 เพิ่มกล่องคำสั่งผสม (แรกที่ด้านซ้ายมือที่สองทางด้านขวา) และปุ่มคำสั่ง เมื่อผลการค้นหาเสร็จสมบูรณ์ผลลัพธ์ควรสอดคล้องกับรูปแบบ Userform ที่แสดงไว้ก่อนหน้านี้ ตัวอย่างเช่นสร้างตัวควบคุมกล่องคำสั่งผสมโดยคลิกที่ ComboBox จากกล่องเครื่องมือ จากนั้นคุณสามารถลากกล่องคำสั่งผสมใน Userform ได้

4 คุณสามารถเปลี่ยนชื่อและคำอธิบายภาพของตัวควบคุมได้ ชื่อที่ใช้ในโค้ด Excel VBA คำอธิบายภาพคือคำอธิบายภาพที่ปรากฏบนหน้าจอของคุณ การเปลี่ยนชื่อของตัวควบคุมเป็นวิธีที่ดี แต่ไม่จำเป็นเนื่องจากเรามีตัวควบคุมเพียงเล็กน้อยในตัวอย่างนี้ ในการเปลี่ยนคำอธิบายภาพของปุ่ม Userform และคำสั่งให้คลิก View, Properties Window และคลิกที่แต่ละตัวควบคุม

5. เมื่อต้องการแสดง Userform ให้วางคำสั่งลงในเวิร์กชีทของคุณและเพิ่มโค้ดโค้ดต่อไปนี้:

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

ตอนนี้เรากำลังสร้าง Sub UserForm_Initialize เมื่อคุณใช้การแสดงวิธีการสำหรับ Userform ย่อยนี้จะถูกดำเนินการโดยอัตโนมัติ

เปิดตัว Visual Basic Editor

7. ใน Project Explorer คลิกขวาที่ UserForm1 จากนั้นคลิก View Code

8. เลือก Userform จากรายการแบบหล่นลงด้านซ้าย เลือกเริ่มต้นจากรายการแบบเลื่อนลงด้านขวา

9. เพิ่มบรรทัดรหัสต่อไปนี้:

Private Sub UserForm_Initialize()

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

End Sub

คำอธิบาย: สายรหัสเหล่านี้กรอกข้อมูลในกล่องคำสั่งผสมแรก

ขณะนี้เราได้สร้างส่วนแรกของ Userform แล้ว แม้ว่าจะดูเรียบร้อยแล้ว แต่จะไม่มีอะไรเกิดขึ้นเมื่อเราเลือกรายการจากกล่องคำสั่งผสมแรก

10. ใน Project Explorer ให้คลิกสองครั้งที่ 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 Case ของเราเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับโครงสร้าง Case ที่เลือก

13. ดับเบิลคลิกที่ปุ่ม Import

14. เพิ่มบรรทัดรหัสต่อไปนี้:

Private Sub CommandButton1_Click()

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

End Sub

ผล:

กล่องคำสั่งผสมที่ขึ้นกับใน Excel VBA

อ่านเพิ่มเติมได้ที่: