อย่างที่เราทุกคนทราบดีว่า Office 365 มาพร้อมกับ Excel 365 ที่มาพร้อมกับมัน Microsoft ได้เพิ่มคุณสมบัติใหม่มากมายให้กับ Excel 365 คุณสมบัติดังกล่าวอย่างหนึ่งคือ สูตรอาร์เรย์แบบไดนามิก โดยปกติ สูตรจะคืนค่าเพียงค่าเดียวเป็นผลให้เซลล์ แต่ตอนนี้ ด้วยคุณสมบัติใหม่นี้ สามารถคืนค่าได้หลายค่า
ตัวอย่างเช่น ใน Excel 2019 และเวอร์ชันก่อนหน้า สมมติว่าคุณใช้สูตร =D2:D5 กับเซลล์ ผลลัพธ์จะจำกัดอยู่ที่เซลล์แรก
เมื่อเราต้องใส่สูตรกับทุกเซลล์ที่เกี่ยวข้อง เราก็ได้ใช้ Array notation (Ctrl+Shift+Enter) อย่างไรก็ตาม ใน Excel 365 กลับไม่เป็นเช่นนั้น เมื่อคุณใช้สูตรเดียวกัน ค่าจะถูกกระจายไปยังเซลล์ที่เกี่ยวข้องทั้งหมดโดยอัตโนมัติ ดูภาพด้านล่างสำหรับรายละเอียดเพิ่มเติม
พื้นที่ของเซลล์ที่ผลลัพท์เข้าไปเรียกว่า ระยะการรั่วไหล. อ้างอิงจากภาพด้านล่าง
บันทึก:
- NS หก ถูกเปิดใช้งานโดยอัตโนมัติด้วย Dynamic Arrays (ขณะนี้ฟีเจอร์นี้รองรับเฉพาะใน Excel 365 เท่านั้น) และไม่สามารถปิดใช้งานฟีเจอร์นี้ได้
- ฟีเจอร์การรั่วไหลถูกเปิดใช้งานในสูตรทั้งหมดที่มีหรือไม่มีฟังก์ชัน
ข้อผิดพลาดการรั่วไหล จะเห็นได้เมื่อสูตรมีวัตถุประสงค์เพื่อส่งกลับค่าหลายค่า อย่างไรก็ตาม ผลลัพธ์ไม่สามารถใส่ลงในเซลล์ได้ ข้อผิดพลาดมีลักษณะดังนี้:
สาเหตุที่เป็นไปได้ในการพบข้อผิดพลาด #SPILL คือ:
- ช่วงการรั่วไหลมีค่าบางอย่างเนื่องจากไม่สามารถเติมผลลัพธ์ในเซลล์ได้
- ช่วงการรั่วไหลได้รวมเซลล์แล้ว
- เมื่อแผ่นงานเก่า (สร้างโดยใช้ Excel 2016 หรือเก่ากว่า) ที่มีสูตรที่สนับสนุนจุดตัดโดยนัยถูกเปิดขึ้นใน Excel365
- เมื่อคุณนำสูตรอาร์เรย์แบบไดนามิกไปใช้กับตาราง Excel
หากคุณเห็นข้อผิดพลาด #SPILL ใน excel ไม่ต้องกังวล ในบทความนี้ เราจะสาธิตวิธีต่างๆ ในการระบุสาเหตุของปัญหานี้ และดูวิธีแก้ไขข้อผิดพลาด #SPILL
สารบัญ
ระบุสาเหตุของข้อผิดพลาด #SPILL
เมื่อคุณเห็นข้อผิดพลาดที่หก ให้ตรวจสอบว่าเหตุใดคุณจึงเห็นข้อผิดพลาดก่อน ให้ดำเนินการดังกล่าว
ขั้นตอนที่ 1: คลิกที่เซลล์ที่แสดง #หก! ข้อผิดพลาด
ขั้นตอนที่ 2: คลิกที่ เครื่องหมายอัศเจรีย์ ดังที่แสดงด้านล่าง
ขั้นตอนที่ 3: บรรทัดแรกบอกเราว่าอะไรเป็นสาเหตุของข้อผิดพลาด ตัวอย่างเช่น ในกรณีนี้ ข้อผิดพลาดจะถูกมองว่าเป็นช่วงการรั่วไหลไม่เว้นว่าง
การแก้ไขที่ต้องปฏิบัติตามเมื่อระยะการรั่วไหลไม่เว้นว่าง
ปฏิบัติตามการแก้ไขด้านล่างเมื่อคุณเห็นว่า ระยะการรั่วไหลไม่เว้นว่าง
แก้ไข 1: ลบข้อมูลที่ปิดกั้นช่วงการรั่วไหล
หากมีข้อมูลอยู่ภายในเซลล์ในช่วงการรั่วไหล คุณจะเห็นข้อผิดพลาด #SPILL ในการใช้สูตร
เมื่อมองเห็นข้อมูลที่ขวางกั้นระยะการรั่วไหลได้ชัดเจน
พิจารณาตัวอย่างด้านล่าง เมื่อคุณใช้สูตร =D2:D5 กับข้อมูล จะเกิดข้อผิดพลาด SPILL ตามที่มีอยู่ ฉันอยู่นี่ ภายในขอบเขตการรั่วไหล
เพื่อกำจัดข้อผิดพลาด #SPILL เพียงแค่ย้ายข้อมูลหรือลบข้อมูลออกจากช่วงการรั่วไหล
เมื่อข้อมูลที่ปิดกั้นช่วงการรั่วไหลถูกซ่อน
ในบางกรณี ข้อมูลที่ปิดกั้นช่วงการรั่วไหลจะถูกซ่อนไว้และไม่ชัดเจนเท่าที่เห็นในกรณีที่ 1 พิจารณาตัวอย่างด้านล่าง
ในกรณีดังกล่าว เมื่อต้องการค้นหาเซลล์ที่ปิดกั้นช่วงการรั่วไหล ให้ทำตามขั้นตอนด้านล่าง:
ขั้นตอนที่ 1: คลิกที่เซลล์ที่แสดง #หก! ข้อผิดพลาด
ขั้นตอนที่ 2: คลิกที่ เครื่องหมายอัศเจรีย์ ดังที่แสดงด้านล่าง คุณจะเห็นได้ว่าข้อผิดพลาดนั้นเป็นเพราะ ระยะการรั่วไหลไม่เว้นว่างไว้
ขั้นตอนที่ 3: จากเมนูแบบเลื่อนลง ให้คลิกที่ เลือกสิ่งกีดขวางเซลล์
ขั้นตอนที่ 4: เซลล์ที่ปิดกั้นช่วงการรั่วไหลจะถูกเน้นดังที่แสดงด้านล่าง
เมื่อคุณทราบแล้วว่าเซลล์ใดกำลังบล็อกอยู่ ให้ตรวจสอบว่าสาเหตุที่แท้จริงคืออะไร
ขั้นตอนที่ 5: ในการตรวจสอบเซลล์อย่างรอบคอบ คุณสามารถดูข้อมูลบางอย่างที่ซ่อนอยู่ภายในเซลล์ได้
ดังที่เห็นในภาพด้านบนมีข้อมูลบางอย่าง เนื่องจากแบบอักษรมีสีขาว การอุดตันจึงไม่ใช่เรื่องง่าย เพื่อกำจัดข้อผิดพลาด ให้ลบข้อมูลออกจากเซลล์ภายในช่วงการรั่วไหล
แก้ไข 2: ลบการจัดรูปแบบตัวเลขแบบกำหนดเอง;; นำไปใช้กับเซลล์
ในบางครั้ง เมื่อการจัดรูปแบบตัวเลขแบบกำหนดเอง ;; ; ถูกนำไปใช้กับเซลล์ มีโอกาสที่จะเห็นข้อผิดพลาด SPILL ในกรณีดังกล่าว,
ขั้นตอนที่ 1: คลิกที่เซลล์ที่แสดง #หก! ข้อผิดพลาด
ขั้นตอนที่ 2: คลิกที่ เครื่องหมายอัศเจรีย์ ดังที่แสดงด้านล่าง
ขั้นตอนที่ 3: จากเมนูแบบเลื่อนลง ให้คลิกที่ เลือกสิ่งกีดขวางเซลล์
ขั้นตอนที่ 4: เซลล์ที่ปิดกั้นช่วงการรั่วไหลจะถูกเน้นดังที่แสดงด้านล่าง
ขั้นตอนที่ 5: คลิกขวาที่เซลล์สิ่งกีดขวาง
ขั้นตอนที่ 6: เลือก จัดรูปแบบเซลล์
ขั้นตอนที่ 7: หน้าต่างรูปแบบเซลล์เปิดขึ้น ไปที่ ตัวเลข แท็บ
ขั้นตอนที่ 8: จากบานหน้าต่างด้านซ้าย เลือก กำหนดเอง
ขั้นตอนที่ 9: จากบานหน้าต่างด้านขวา ให้เปลี่ยน Type from;;; ถึง ทั่วไป
ขั้นตอนที่ 10: คลิกที่ ตกลง ปุ่ม
การแก้ไขที่ต้องปฏิบัติตามเมื่อ Spill range ได้รวมเซลล์แล้ว
หากคุณเห็นว่าข้อผิดพลาดนั้นเป็นเพราะ ช่วงการรั่วไหลได้ผสานเซลล์ ดังที่แสดงด้านล่าง
ขั้นตอนที่ 1: คลิกที่ เลือกสิ่งกีดขวางเซลล์ จากเมนูแบบเลื่อนลง
ขั้นตอนที่ 2: เซลล์สิ่งกีดขวางจะเป็น ไฮไลท์
ขั้นตอนที่ 3: ภายใต้ บ้าน แท็บ คลิกที่ ผสานและศูนย์
ขั้นตอนที่ 4: จากดรอปดาวน์ ให้เลือก ยกเลิกการผสานเซลล์
แก้ไขที่จะปฏิบัติตามเมื่อ ช่วงการรั่วไหลในตาราง
สูตรอาร์เรย์แบบไดนามิกไม่ได้รับการสนับสนุนในตาราง Excel หากคุณเห็นข้อผิดพลาด #SPILL ในตาราง excel ดังที่แสดงด้านล่างพร้อมข้อความ ช่วงการรั่วไหลในตาราง,
ขั้นตอนที่ 1: เลือกตารางให้สมบูรณ์
ขั้นตอนที่ 2: คลิกที่ การออกแบบโต๊ะ จากแถบเมนูด้านบน
ขั้นตอนที่ 3: เลือก แปลงเป็นช่วง
ขั้นตอนที่ 4: คุณจะเห็นกล่องโต้ตอบการยืนยันปรากฏขึ้น ให้คลิกที่ ใช่
จะต้องแก้ไขเมื่อช่วงการรั่วไหลมีหน่วยความจำไม่เพียงพอ
เมื่อคุณพยายามระบุสาเหตุของข้อผิดพลาด #SPILL หากคุณเห็นว่าข้อผิดพลาดนั้นแจ้งว่า ความจำเต็มนั่นเป็นเพราะสูตรอาร์เรย์ไดนามิกที่คุณใช้อ้างอิงช่วงกว้าง ในกรณีเช่นนี้ excel รัน ความจำเต็ม ทำให้เกิดข้อผิดพลาดในการหกรั่วไหล เพื่อเอาชนะข้อผิดพลาด เราสามารถลองอ้างอิงช่วงที่เล็กกว่า
การแก้ไขที่จะปฏิบัติตามเมื่อไม่ทราบช่วงการรั่วไหล
ข้อผิดพลาดนี้จะเห็นได้เมื่อขนาดของ Spilled Array เปลี่ยนแปลงและ excel ไม่สามารถกำหนดขนาดของช่วงที่รั่วไหลได้ โดยทั่วไป เมื่อคุณใช้ฟังก์ชันสุ่ม เช่น RANDARRAY, RAND หรือ RANDBETWEEN ร่วมกับฟังก์ชัน Dynamic Array เช่น SEQUENCE ข้อผิดพลาดนี้จะปรากฏขึ้น
เพื่อให้เข้าใจดีขึ้น ลองพิจารณาตัวอย่างด้านล่าง สมมติว่าใช้ฟังก์ชัน SEQUENCE(RANDBETWEEN(1,100)) ที่นี่ RANDBETWEEN สร้างจำนวนเต็มที่สุ่มที่มากกว่าหรือเท่ากับ 1 และน้อยกว่าหรือเท่ากับ 100 และ SEQUENCE จะสร้างตัวเลขตามลำดับ (เช่น-SEQUENCE(5) สร้าง 1,2,3,4,5) อย่างไรก็ตาม RANDBETWEEN เป็นฟังก์ชันที่มีความผันผวนและยังคงเปลี่ยนแปลงค่าทุกครั้งที่เปิดหรือเปลี่ยนแปลงแผ่นงาน Excel ด้วยเหตุนี้ ฟังก์ชัน SEQUENCE จึงไม่สามารถกำหนดขนาดของอาร์เรย์ที่ต้องสร้างได้ มันจะไม่ทราบว่าจะสร้างค่าได้จำนวนเท่าใดจึงทำให้เกิดข้อผิดพลาด SPILL
เมื่อคุณระบุสาเหตุของข้อผิดพลาด คุณจะเห็น ไม่ทราบช่วงการรั่วไหล
เพื่อแก้ไขข้อผิดพลาดประเภทนี้ ลองใช้สูตรอื่นที่เหมาะกับความต้องการของคุณ
การแก้ไขที่ต้องปฏิบัติตามเมื่อระยะการรั่วไหลใหญ่เกินไป
สมมติว่าคุณกำลังระบุสาเหตุและคุณสังเกตเห็นว่าเห็นข้อผิดพลาดเนื่องจาก ระยะการรั่วไหลใหญ่เกินไป ดังที่แสดงด้านล่าง
เมื่อไม่อยู่ในตำแหน่ง Dynamic Array มีบางอย่างที่เรียกว่าจุดตัดโดยนัยใน excel นั้น บังคับให้ส่งคืนผลลัพธ์เดียวแม้ว่าสูตรจะมีศักยภาพในการส่งคืนหลายรายการ ผลลัพธ์. พิจารณาตัวอย่างถ้าสูตร =B: B*5% ถูกนำไปใช้กับ Excel 2019 หรือเวอร์ชันก่อนหน้า โดยมีจุดตัดโดยนัย ผลลัพธ์จะเป็นดังนี้:
อย่างไรก็ตาม เมื่อใช้สูตรเดียวกันใน Excel 365 คุณเห็นข้อผิดพลาดต่อไปนี้
เพื่อแก้ปัญหานี้ ให้ลองแก้ไขดังต่อไปนี้
แก้ไข 1: ใช้ทางแยกโดยนัยโดยใช้ตัวดำเนินการ @
เมื่อเราพูดว่า =B: Bไดนามิกอาร์เรย์จะอ้างอิงทั้งคอลัมน์ B เราสามารถบังคับให้ excel กำหนดจุดตัดโดยปริยายโดยใช้ตัวดำเนินการ @ แทน
เปลี่ยนสูตรเป็น[ป้องกันอีเมล]:ข*5%
เนื่องจากมีการเพิ่มจุดตัดโดยนัย สูตรจะถูกนำไปใช้กับเซลล์เดียว เพื่อขยายสูตร
1. เพียงคลิกที่จุดที่แสดงด้านล่าง
2. ลากลงมาที่เซลล์ตามต้องการ ซึ่งจะใช้สูตรเดียวกันกับเซลล์เหล่านี้
แก้ไข 2: แทนที่จะอ้างถึงคอลัมน์ ให้อ้างอิงช่วง
ในสูตรนั้น =B: B*5%, เรากำลังพูดถึงคอลัมน์ B แทนที่จะอ้างถึงช่วงเฉพาะ =B2:B4*5%
นั่นคือทั้งหมด
เราหวังว่าบทความนี้จะได้รับข้อมูล
กรุณาชอบและแสดงความคิดเห็นหากคุณสามารถแก้ไขปัญหาด้วยวิธีข้างต้น
ขอบคุณสำหรับการอ่าน.