
สำหรับการทำข้อความเตือนผมตรวจสอบใน Validation พบว่ามีการเขียนมาบ้างแล้ว ลักษณะการเตือนว่าคีย์ให้ครบก็สามารถเพิ่มเติมเข้าไปจากเดิมโดยใช้ And เพื่อจะทำเป็นหลายเงื่อนไขได้ครับ
สำหรับเงื่อนไขที่จะตรวจสอบว่าบรรทัดบนต้องไม่ว่างสามารถทำดังนี้ครับ
1. คลุม
B3:G21
2. เข้าเมนู Data > Validation > ตรง Allow เลือก Custom > ตรง Formula: คีย์
=COUNTA(OFFSET($B3,-1,0,1,5))=6
กรณีต้องการใช้หลายเงื่อนไข ตรง Formula สามารถใช้ And เข้ามาช่วยเป็น
=And(Formula1,
COUNTA(OFFSET($B3,-1,0,1,5))=6,Formula3,...)
จากตัวอย่างสูตรด้านบนจะเห็นว่าเงื่อนไขของการตรวจสอบว่าคีย์ครบหรือไม่ครบอยู่ในเงื่อนไขตัวที่สอง
กรณี Code การส่งค่าใน InputBox ไปบันทึกยังตำแหน่งที่ต้องการจาก Code ด้านล่าง
Code: Select all
ActiveCell.Offset(0, IIf(ActiveCell.Column = 14, 6, 5)) _
= InputBox(prompt:="ระบุเหตุผล :", _
Title:="เหตุผล")
ActiveCell คือเซลล์ปัจจุบัน
ActiveCell.Column คือคอลัมน์ของเซลล์ปัจจุบัน
ActiveCell.Offset(x,y) คือตำแหน่งเซลล์ใหม่ที่ถัดจากเซลล์ปัจจุบันไปจำนวน x บรรทัด y คอลัมน์
IIf(ActiveCell.Column = 14, 6, 5) หมายความว่า ถ้าเซลล์ปัจจุบันอยู่ในคอลัมน์ที่ 14 ก็ให้แสดงผลลัพธ์เป็น 6 ไม่เช่นนั้นก็ให้แสดงผลลัพธ์เป็น 5