snasui wrote:
การใช้เวลามาเป็น Event ในการเปลี่ยนค่าใน ComboBox จะมี 2 ลักษณะเป็นอย่างน้อยครับ
แบบแรกเปลี่ยนค่าใน ComboBox เมื่อถึงกำหนดเวลานั้นและต้องเปิดไฟล์อยู่ตลอดเวลา Code ที่ใช้จะเป็นการ Code ลักษณะการจับเวลา
แบบที่สองคือ เมื่อเปิดไฟล์ค่อยตรวจสอบแล้วเปลี่ยนค่าใน ComboBox
การเขียน Code จะยากง่ายต่างกัน โดยแบบที่สองจะง่ายกว่า
การดักแบบที่สองนี้สามารถหาได้โดยทั่วไปครับ คือจะมีการเก็บค่าวันที่ เวลา ปัจจุบันเอาไว้สักที่ เมื่อเปิดไฟล์ครั้งถัดไปจะตรวจสอบว่า ขณะที่เปิดไฟล์เป็นเวลาตามเงื่อนไขแล้วหรือไม่ หากเป็นตามเงื่อนไขแล้วค่อยบวกค่าใน ComboBox ไปอีก 1 หากไม่เปิดทุกวันก็จะต้องดักให้ได้ว่าต้องบวกไปเป็นจำนวนเท่าใดเช่นนี้เป็นต้นครับ
ผมเลือกใช้แบบแรกครับ
เนื่องจากผมเปิดไฟล์ตลอดเวลา เมื่อถึงเวลาที่กำหนดจะ ComboBox จะทำการ +1 อัตโนมัติ
แต่เวลาที่ผมใช้ในการจับเวลา Input นั้นมาจาก PLC ครับ เป็นตัวรันเวลา และใน Cell ที่ผมทำไว้คือ ให้ PLC บันทึกเวลาลงใน
Cell D4:E4
Code ที่ใช้ในการจับเวลานั้น ผมลองใช้ Timer ในการเขียนแล้ว แต่ไม่ได้ผลครับ
ComboBox ไม่ +1 ครับ ผมลองใช้ Timer อ้างอิงกับ Cell ที่รับเวลามาจาก PLC ก็ไม่ออกครับ
เพราะผมกำหนดเวลาให้แยกกัน โดยจำนวนชั่วโมงอยู่ที่ D4 ส่วนนาที อยู่ E4 แต่พอนำมาเปรียบเทียบ D4=7,E4=30
เพื่อจะให้ ComboBox +1 เพิ่มไป แต่คำสั่งไม่รัน
หรือว่าผมใช้ Code ในการจับเวลาผิดครับ