Vba: วิธีสร้างกล่องข้อความที่มีคำตอบใช่/ไม่ใช่


คุณสามารถใช้ไวยากรณ์ต่อไปนี้ใน VBA เพื่อสร้างกล่องข้อความเพื่อให้ผู้ใช้เลือกใช่หรือไม่ใช่:

 Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
    Else
      MsgBox “ No Multiplication was PerformedEnd If

End Sub

แมโครนี้จะสร้างกล่องข้อความที่ถามผู้ใช้ว่าต้องการคูณเซลล์ A1 และ B1 หรือไม่

หากผู้ใช้คลิก “ใช่” เซลล์ทั้งสองจะถูกคูณและผลลัพธ์จะแสดงในเซลล์ C1

หากผู้ใช้คลิก “ไม่” กล่องข้อความใหม่จะปรากฏขึ้นเพื่อแจ้งให้ทราบว่าไม่มีการคูณ

โปรดทราบว่าคำสั่ง vbYesNo คือสิ่งที่แทรกปุ่ม “ใช่” และ “ไม่ใช่” เพื่อให้ผู้ใช้คลิก

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: สร้างกล่องข้อความที่มีคำตอบใช่/ไม่ใช่

สมมติว่าเรามีค่าสองค่าต่อไปนี้ในเซลล์ A1 และ B1 ของแผ่นงาน Excel ของเรา:

สมมติว่าเราต้องการสร้างแมโครที่แสดงกล่องข้อความให้กับผู้ใช้และถามว่าต้องการคูณค่าในเซลล์ A1 และ B1 หรือไม่

เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:

 Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
    Else
      MsgBox “ No Multiplication was PerformedEnd If

End Sub

เมื่อเราเรียกใช้แมโครนี้ กล่องข้อความต่อไปนี้จะปรากฏขึ้น:

msgbox ของ VBA ใช่หรือไม่ใช่

หากเราคลิก ใช่ มาโครจะคูณค่าในเซลล์ A1 และ B2 และแสดงผลลัพธ์ในเซลล์ C1:

อย่างไรก็ตาม ถ้าเราคลิก ไม่ กล่องข้อความใหม่จะปรากฏขึ้น:

กล่องข้อความบอกเราว่าไม่มีการคูณใดๆ เนื่องจากเราคลิก No ในกล่องข้อความก่อนหน้า

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:

VBA: วิธีเพิ่มบรรทัดใหม่ในกล่องข้อความ
VBA: วิธีเพิ่มแผ่นงานใหม่
VBA: วิธีตรึงบานหน้าต่าง

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *