Is Null และ ช่องว่าง ใน Access VBA
วันนี้ปวดหัวอยู่ตั้งนาน เพราะเรื่อง Is Null และ ช่องว่าง หรือ ข้อความว่างเปล่า ใน Access นั่นเอง เรื่องก็คือว่า มีข้อมูลในตาราง ที่กำหนดชนิดข้อมูลเป็น Text ตั้งค่าเริ่มต้นให้เป็นว่าง หรือ "" ในตารางมีข้อมูลอยู่แล้ว และได้ลบข้อมูลออกทิ้งไป ต่อมาต้องการสร้างเงื่อนไขใน Query ให้แสดงข้อมูลในฟิลด์นี้ โดยกำหนดเงื่อนไข ดังนี้ ผลปรากฎว่า ไม่มีอะไรออกมาให้เห็นเลย ทั้ง ๆ ที่ก็เห็น ๆ อยู่ว่า เคยมีข้อมูลอยู่ และลบไปแล้ว ตอนนี้ไม่มีอะไรแล้ว ทำไปทำมา ก็ได้ข้อสรุปว่า ข้อมูลชนิด Text ที่ลบไปแล้วเมื่อสักครู่ ปัจจุบัน กลายเป็น Null เลยทดสอบ เปลี่ยนเงื่อนไขใหม่ เป็น คราวนี้ ปรากฏว่า มีข้อมูลใน Record ที่ลบฟิลด์ isPass ไปแล้ว มาแสดงให้เห็น แต่ปัญหาก็คือ มีฟิลด์ isPass ใน Record อื่น ที่มีค่าเป็น "" หรือข้อความว่าง เมื่อกำหนดเงื่อนไขเป็น Is Null ข้อมูลใน Record ที่มีข้อความว่าง ก็จะไม่ปรากฏ เพราะไม่เป็นไปตามเงื่อนไข ทางแก้ก็คือ ต้่องใช้ฟังก์ชัน Nz() มาช่วย โดยสร้างฟิลด์ใหม่ แปลงข้อมูลที่เป็น Null ให้เป็นข้อความว่าง หรือ "" เสียก่อน แล้วจึงกำหนดเงื่อนไขเป็น ข้