snasui.com ยินดีต้อนรับ ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
สวัสดีคะ
ดิฉันกำลังทำแบบฟอร์มบันทึกการมาทำงานของพนักงานใน 1 เดือน ซึ่งต้องการให้ง่ายในการบันทึกโดยการให้บันทึกอีกหน้าหนึ่งแล้วทำสูตรให้ดึงข้อมูลที่ Match กันแล้วให้ขึ้นว่าอยู่กะ M หรือกะ Nด้วย
สูตรที่ใช้
=IF(MATCH(F16,'daily record M Shift'!A:A,0),"M",IF(MATCH(F16,'daily record N Shift'!$A:$A,0),"N"))
ค่า IF แรกสามารถใช้งานได้ปกติ
ค่า IF ที่2 ขึ้น N/A
รบกวนช่วยแนะนำด้วยนะคะ
You do not have the required permissions to view the files attached to this post.
ฟังก์ชั่น Match เป็นการค้นหาค่าที่ต้องการว่าอยู่ในพื้นที่เป้าหมายหรือไม่ ถ้าพบจะแสดงลำดับที่พบ ถ้าไม่พบจะแสดง #N/A
จากฟังก์ชั่น IF ตามโพสต์ #1 หากว่า Match ตัวแรกแล้วเป็น #N/A มันก็จะได้ผลลัพธ์เป็น #N/A ทันที ไม่สนใจ Match ตัวที่สองอีกต่อไปเนื่องจากเงื่อนไขของฟังก์ชั่น If จะต้องให้ผลลัพธ์เป็น True หรือ False อย่างใดอย่างหนึ่งเท่านั้นครับ
เมื่อเป็นเช่นนั้นก็ต้องกลับมาทบทวนสูตรใหม่ว่าต้องการจะทำอะไร หากต้องการหาว่าพบหรือไม่พบสามารถใช้ได้หลายฟังก์ชั่น Match ก็เป็นจำนวนหนึ่งในนั้น แต่ Match อย่างเดียวย่อมไม่พอ หากจะปรับสูตรเดิมสามารถใช้ Isnumber เข้ามาช่วยได้ เช่น
=IF(Isnumber(MATCH(F16,'daily record M Shift'!A:A,0)),"M","N"))
แปลว่า หากพบ F16 ใน daily record M Shift'!A:A ให้แสดงค่า "M" หากไม่พบให้แสดงค่า "N"