Online Reference |
Microsoft Reference |
|
|
IIf FunctionVBA Function, สำหรับส่งออกค่าใดค่าหนึ่งจาก 2 ค่าที่ขึ้นกับค่าของ expression ที่ประเมินค่าได้ ไวยากรณ์
อากิวเมนต์ของฟังก์ชัน IIf มีไวยากรณ์ ดังนี้
ลักษณะการประยุกต์ฟังก์ชัน IIf จะหาค่าจากอากิวเมนต์ truepart และ falsepart แต่ส่งค่าออกเพียงค่าเดียว ผลดังกล่าวทำให้เกิดผลกระทบข้างเคียง เช่น ถ้าการหาผลลัพธ์อากิวเมนต์ falsepart ในค่าความผิดพลาดจากการหารด้วยศูนย์ ซึ่งความผิดพลาดจะเกิดขึ้นเมื่ออากิวเมนต์ expr เป็นจริง ดูเพิ่มเติมฟังก์ชัน Choose, If Then Else Statement, Select Case Statement, ฟังก์ชัน Switch วิธีการประยุกต์ใน Accessฟังก์ชัน IIf สามารถใช้ในตัว control บนฟอร์มหรือรายงานใน Microsoft Access โดยใช้ฟังก์ชัน IIf ในการหาค่าของ expression และส่งออกค่าใดค่าหนึ่งตามค่าที่ได้จาก expression เป็น True (-1) หรือ False (0) เช่น สามารถใช้ฟังก์ชัน IIf ในการตรวจสอบค่าฟิลด์บนฟอร์มและหาค่าเมื่อเป็นค่าว่าง ถ้าใช่ สามารถใช้ฟังก์ชัน IIf บังคับให้ส่งออกค่าเป็น zero-length string ถ้าฟิลด์มีค่าที่ไม่ใช่ค่าว่าง ให้ฟังก์ชัน IIf ส่งออกค่าของฟิลด์ที่มีอยู่ ตัวอย่างต่อไปแสดงการตรวจสอบฟิลด์ ShipCountry ใน Table ชื่อ Orders และส่งออกข้อความว่าง () ถ้าเป็นค่าว่าง =IIf(IsNull(Forms!Orders![ShipCountry]), , Forms!Orders![ShipCountry]) ใน Visual Basic ฟังก์ชัน IIf จะหาค่าจากอากิวเมนต์ truepart และ falsepart แต่ส่งค่าออกเพียงค่าเดียว แต่ในฟอร์มหรือรายงานของ Microsoft Access ฟังก์ชัน IIf จะหาค่าที่เหมาะสมเพียงค่าเดียวจากอากิวเมนต์ truepart และ falsepart ดังนั้นจึงไม่ต้องระวังผลกระทบข้างเคียงในการหาผลลัพธ์ เมื่อมีการใช้ฟังก์ชัน IIf ในตัว control, expression ของคิวรี่ หรือมาโคร หมายเหตุ ฟังก์ชัน Nz ใน Microsoft Access ใช้สำหรับการแปลงค่าว่าง (Null) เป็น 0, zero-length string, หรือค่าที่ระบุ ถ้า expression ใช้ในการทำงานกับค่าว่าง ฟังก์ชัน Nz สามารถเป็นตัวเลือกสำหรับการใช้งานนอกจากฟังก์ชัน IIf ฟังก์ชัน IIf ใช้ประโยชน์ได้ดีใน expression ของฟอร์มหรือรายงาน มากกว่าการใน Visual Basic โดยใน Visual Basic สามารถใช้คำสั่ง If Then Else เต็มรูปแบบซึ่งมีการทำงานที่กว้างขวางกว่า ตัวอย่างตัวอย่างการใช้ฟังก์ชัน IIf ในการหาค่าพารามิเตอร์ TestMe ของ procedure ชื่อ CheckIt และส่งออกค่าเป็นข้อความ Large ถ้าผลรวมมากกว่า 1000 กรณีอื่นส่งออกข้อความ Small Function CheckIt (TestMe As Integer) ตัวอย่างการประยุกต์ใน Accessตัวอย่างการใช้ฟังก์ชัน IIf ในการหาค่าฟิลด์ OrderAmount และส่งออกค่าเป็นข้อความ Large ถ้าผลรวมมากกว่า 1000 กรณีอื่นส่งออกข้อความ Small ให้กำหนดค่าของคุณสมบัติ ControlSource ของตัว control ด้วย expression นี้ = IIf([OrderAmount] > 1000, "Large", "Small")
|
||||||||||||