การเลือก run code ใน module VBA
Posted: Sun Dec 22, 2019 3:03 am
สวัสดีครับ
ผมมี code VBA อยู่ 2 module คือ module ที่ 3 และ 4 ตามไฟล์แนบครับ
ที่ sheet QC_from cell F2 และ F3 จะให้เลือกว่าต้องการ run code module ไหน
โดยใช้ค่า Cell G2 เป็นตัวกำหนด
และที่ Sheet QC_from เขียน code เรียก module มาใช้งานแต่ code ยังไม่สามารถทำงานได้ครับ โดยมีความต้องการดังนี้ครับ
module 3 (Scan_QC) ที่cell f2/f3 ที่กล่าวไว้ด้านบน ถูกเลือกไว้ที่ QC แบบมีเบอร์โทร เมือ scan barcode มาจนถึง ช่อง phone no. แล้วให้เรียก module scan_QC มาทำงานอัตโนมัติ
module 4 (Scan_QC_nophone ) ที่cell f2/f3 ที่กล่าวไว้ด้านบน ถูกเลือกไว้ที่ QC แบบไม่มีเบอร์โทร เมือ scan barcode มาจนถึง ช่อง EAN แล้วให้เรียก module scan_QC_nophone มาทำงานอัตโนมัติ
code ที่เขียนไว้เพื่อเลือกตามช่อง G2 ว่าจะ run module ไหน ตามนี้ครับ จึงขอความอนุเคราะห์ปรับแก้ code หรือแนวทางอื่น เพื่อให้ได้ตามความต้องการครับ
ขอบคุณมากครับ
ผมมี code VBA อยู่ 2 module คือ module ที่ 3 และ 4 ตามไฟล์แนบครับ
ที่ sheet QC_from cell F2 และ F3 จะให้เลือกว่าต้องการ run code module ไหน
โดยใช้ค่า Cell G2 เป็นตัวกำหนด
และที่ Sheet QC_from เขียน code เรียก module มาใช้งานแต่ code ยังไม่สามารถทำงานได้ครับ โดยมีความต้องการดังนี้ครับ
module 3 (Scan_QC) ที่cell f2/f3 ที่กล่าวไว้ด้านบน ถูกเลือกไว้ที่ QC แบบมีเบอร์โทร เมือ scan barcode มาจนถึง ช่อง phone no. แล้วให้เรียก module scan_QC มาทำงานอัตโนมัติ
module 4 (Scan_QC_nophone ) ที่cell f2/f3 ที่กล่าวไว้ด้านบน ถูกเลือกไว้ที่ QC แบบไม่มีเบอร์โทร เมือ scan barcode มาจนถึง ช่อง EAN แล้วให้เรียก module scan_QC_nophone มาทำงานอัตโนมัติ
code ที่เขียนไว้เพื่อเลือกตามช่อง G2 ว่าจะ run module ไหน ตามนี้ครับ จึงขอความอนุเคราะห์ปรับแก้ code หรือแนวทางอื่น เพื่อให้ได้ตามความต้องการครับ
ขอบคุณมากครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range) 'Excel VBA change event test for close.
If Range("Select_Marcro").Value = 1 Then
If Not Intersect(Target, Range("Scan_Phone")) Is Nothing Then
Application.EnableEvents = False
If Target = Range("Scan_Phone") Then
Call Scan_QC
End If
End If
End If
Application.EnableEvents = True
Exit Sub
ElseIf Range("Select_Marcro").Value > 1 Then
If Not Intersect(Target, Range("EAN_scan")) Is Nothing Then
Application.EnableEvents = False
If Target = Range("EAN_scan") Then
Call Scan_QC_Nophone
End If
End If
End If
Application.EnableEvents = True
End Sub