วันนี้มีคำถามทางอีเมล์ ถามว่า
(จากรูป) ขอคำแนะนำในการจะใส่ลำดับที่ของสัญญา ตั้งแต่คอลัมภ์ A4 จะทำอย่างไรให้รัน โดยไม่ต้องคีย์ เพราะมีจำนวนสัญญา มากกว่าพันรายค่ะ ตอนแรกได้ทดลองทำเองโดยพิมพ์สูตรที่ A4 =IF(B4="","",MAX(A$1:A3)+1) แต่ได้ตัวเลขไม่ถูกต้อง
แนวคิด
ที่จริง ผู้ถามก็มาถูกทางแล้วนะครับ เพราะจากสูตร =IF(B4="","",MAX(A$1:A3)+1) นั้น ก็สามารถรันเลขลำดับแบบอัตโนมัติได้เช่นกัน แต่การเช็คเงื่อนไขจากสูตรข้างต้นนั้น หมายถึงให้ตรวจสอบว่า ถ้าคอลัมน์ B เป็นเซลล์ว่าง ก็ไม่ต้องแสดงตัวเลขลำดับ แต่ถ้าไม่เป็นเซลล์ว่างก็ให้แสดงเลขลำดับ (โดยเอาค่ามากสุดที่อยู่ก่อนหน้า มาบวกเพิ่มอีกหนึ่ง)
ซึ่งหากดูจากไฟล์ตัวอย่าง (ดังรูป) จะเห็นว่า ในคอลัมน์ B นอกจากจะมีตัวเลข ที่เป็นเลขที่สัญญาแล้ว ยังมีบางแถวเป็นข้อความด้วย (คำว่า เลขที่สัญญา) ดังนั้น ถ้าคัดลอกสูตรลงมาทุกแถว สูตรนี้จึงแสดงตัวเลขลำดับในคอลัมน์ A ในทุกแถวที่คอลัมน์ B ไม่เป็นเซลล์ว่าง เช่น A4, A8, A9, A13 และ A14 เป็นต้น
ความต้องการคือ ให้แสดงเลขที่ลำดับ เฉพาะแถวที่คอลัมน์ B เป็นตัวเลข เลขที่สัญญา เท่านั้น ดังนั้น การตรวจสอบเงื่อนไข จึงต้องตรวจสอบเฉพาะแถวที่คอลัมน์ B เป็นตัวเลข เช่น
A4 =IF(ISNUMBER(B4),MAX(A$1:A3)+1,"")
เมื่อคัดลอกสูตรลงมาจะเห็นว่า แสดงผลลัพธ์ได้ถูกต้อง
มีสูตรอื่นๆ อีกมั๊ย?
นอกจากสูตรที่กล่าวถึงข้างต้นแล้ว ยังสามารถใช้สูตรอื่นๆ ซึ่งจะให้ผลลัพธ์เหมือนกันได้อีก เช่น
A4 =IF(ISNUMBER(B4),COUNT(A$1:A3)+1,"")
โดยฟังก์ชัน COUNT จะนับเฉพาะเซลล์ที่เป็นตัวเลข ซึ่งในกรณีนี้จะนับตั้งแต่ A1 ลงมาจนถึงเซลล์ก่อนเซลล์ปัจจุบัน โดยนับเฉพาะเซลล์ที่เป็นตัวเลขว่ามีกี่เซลล์ แล้วบวกค่าเพิ่มอีกหนึ่ง เนื่องจากกรณีนี้เรารันตัวเลขลำดับเรียงต่อเนื่องกัน ดังนั้น การนับจำนวนเซลล์ที่เป็นตัวเลข หรือดูเซลล์ที่มีค่ามากสุด แล้วบวกเพิ่มอีกหนึ่ง จึงได้ผลลัพธ์เท่ากัน
แต่ถ้าเลขที่สัญญาไม่ใช่ตัวเลขทั้งหมด อาจจะมีตัวอักษร หรือมีสัญลักษณ์อื่นแทรกอยู่ ทำให้ฟังก์ชัน ISNUMBER คืนค่าออกมาเป็นเท็จ สองสูตรข้างต้นจึงใช้ไม่ได้ เราอาจจะเลี่ยงไปใช้วิธีอื่น เช่น นับจำนวนตัวอักษรของเลขที่สัญญา เช่น ถ้ารูปแบบเลขที่สัญญาเป็นลักษณะ 3000-2962 (มีจำนวน 9 ตัวอักษร) ก็แก้สูตรเป็น
A4 =IF(LEN(B4)=9,MAX(A$1:A3)+1,"") หรือ
A4 =IF(LEN(B4)=9,COUNT(A$1:A3)+1,"") ก็ได้เช่นกัน
ลองประยุกต์ใช้ดูนะครับ
ซ่อมคอมพิวเตอร์นอกสถานที่ บางกะปิ รามคำแหง
วันอาทิตย์ที่ 2 มีนาคม พ.ศ. 2557
การรันตัวเลขลำดับแบบอัตโนมัติ
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
0 ความคิดเห็น:
แสดงความคิดเห็น