เมื่อเรียงลำดับตารางหรือช่วงใน Excel ค่าของเซลล์และการจัดรูปแบบพื้นฐานเช่นตัวหนาตัวเอียงสี ฯลฯ จะย้าย แต่สิ่งต่อไปนี้จะไม่ย้าย:
- พรมแดน
- กฎการตรวจสอบข้อมูล
สเปรดชีตของฉันมีการตรวจสอบความถูกต้องของข้อมูลต่อเซลล์ดังนั้นเมื่อฉันทำการเรียงลำดับมันจะย้ายค่าไปรอบ ๆ แต่ไม่ได้ทำการตรวจสอบความถูกต้องกับพวกเขา
นี่คือตัวอย่างก่อนการจัดเรียง:
และหลังจากการเรียงลำดับ (AZ บนชื่อ "Fruit")
มีวิธีทำให้ Excel ย้ายกฎการตรวจสอบความถูกต้องของข้อมูลพร้อมกับค่าและรูปแบบเมื่อ Excel ทำการเรียงลำดับหรือไม่
แก้ไข:
เพียงชี้แจงฉันมีสองข้อกังวลแยกกันได้ที่นี่:
- ข้อกังวลหลัก: หากผู้ใช้ตัดสินใจที่จะคลิกปุ่มเรียงลำดับหรือตัวเลือกเรียงลำดับบนส่วนหัวของคอลัมน์ตัวกรองสิ่งนี้จะทำให้กฎการตรวจสอบความถูกต้องของข้อมูลของฉัน (ซับซ้อน!)
- ข้อกังวลรอง: คงจะดีถ้าแผ่นงานของฉันสามารถเรียงลำดับโดยใช้ปุ่ม inbuilt Excel สำหรับการเรียงลำดับ (นี่เป็นวิธีที่ชัดเจนที่สุดในการจัดเรียงข้อมูล) มาโครที่แยกต่างหากสำหรับการเรียงลำดับนั้นดูเหมือนว่าจะเป็นเรื่องเล็กน้อย
แก้ไข:
วิธีแก้ปัญหาในที่สุดของฉันคือการปิดการเรียงลำดับทั้งหมดโดยปกป้องสมุดงานและปิดการเรียงลำดับสำหรับชีตทั้งหมด คุณสามารถกดปุ่ม "เรียงลำดับ" แต่พวกเขาไม่ทำอะไรเลย
เพื่อเป็นการป้องกันเพิ่มเติมฉันได้เพิ่ม VBA ที่จะใช้ Protect Workbook อีกครั้งทุกครั้งที่มีการเปิดเวิร์กบุ๊กและแสดงแผ่นงานพร้อมคำแนะนำการใช้งานและคำเตือน (เช่น "อย่าเรียงลำดับ!") ผู้ใช้ปลายทางสามารถยกเลิก - ป้องกันสมุดงานได้ตลอดเวลาดังนั้นนี่จึงไม่ผิดพลาด แต่ฉันเชื่อว่าเป็นสิ่งที่ดีที่สุดที่ฉันสามารถทำได้