Page 1 of 1

การใช้ If, Else ทำการเปรียบเทียบข้อมูล แล้วไปเรียก Call VB หรือปุ่มที่ต้องการ มีวิธีอย่างไรครับ

Posted: Mon Sep 17, 2018 4:44 pm
by Weravong
เรียน ทุกท่านที่เคารพครับ
พอดีทำระบบตรวจสอบการทำงานและมีการสร้างปุ่มการทำงาน และอยากให้ปุ่มเหล่านี้ทำงานตามที่เราต้องการ(โดยมีเงื่อนไข IF,ELSE)

โดยมีรายละเอียดตามไฟล์แนบ และคำอธิบายดังนี้ครับ
เมื่อค่าใน Cell ของ Excel ช่อง B10 , B10>"0" ให้เรียกหรือ Call ของปุ่ม Menu_A1
และหาก B10="0" ให้เรียกหรือ Call ของปุ่ม Menu_A2
โดยเราสร้าง Menu หลัก(Main_Menu) โดยมี Code ของการทำงานดังกล่าวครับ

โดย B10 จะมีการเปลี่ยนแปลงตลอดเวลาครับ และ File ต้นฉบับที่ใช้งานจริงผมได้ทำการออกแบบลักษณะนี้ครับ
แต่ที่ส่งไฟล์มาให้เป็บแบบจำลองทดสอบครับ หากการ Call เป็นข้อจำกัดในการเรียกใช้ อาจจะต้องใช้คำสั่งอื่นแทนก็ได้ครับ
และคาดว่าผมอาจจะระบุตัวแปรยังไม่ถูกต้อง เพราะไม่แน่ใจว่าจะอ้างอิง B10 อย่างไร(ปัจจุบันใช้ Macro บันทึกอย่างเดียวในการทำโปรแกรม)
ขอบคุณทุกท่านมากๆครับ

Re: การใช้ If, Else ทำการเปรียบเทียบข้อมูล แล้วไปเรียก Call VB หรือปุ่มที่ต้องการ มีวิธีอย่างไรครับ

Posted: Mon Sep 17, 2018 6:19 pm
by parakorn
ตัวอย่างคำสั่งครับ

Code: Select all

Sub Main_Menu()

Dim B10 As String

If Range("B10") > 0 Then

    Call Module2.Menu_A1
    
    ElseIf Range("B10") = 0 Then
    
    Call Module2.Menu_A2

End If
    
End Sub

Re: การใช้ If, Else ทำการเปรียบเทียบข้อมูล แล้วไปเรียก Call VB หรือปุ่มที่ต้องการ มีวิธีอย่างไรครับ

Posted: Mon Sep 17, 2018 8:09 pm
by Weravong
เรียน คุณparakorn ขอขอบคุณมากๆครับ สุดยอดมากๆครับ
(สำหรับ Code ที่คุณ parakorn ให้มา ผมทดสอบแล้วสมบูรณ์มากๆครับ)
เดี๋ยวผมจะลองไปทำการประยุกษ์ในโปรแกรมจริงต่อไป แล้วจะนำผลมาแจ้งให้ทราบครับ