สารบัญ
บทช่วยสอนจะสอนวิธีลบคอลัมน์ว่างใน Excel ด้วยมาโคร สูตร และการคลิกปุ่ม
ฟังดูเป็นเรื่องเล็กน้อย การลบคอลัมน์ว่างใน Excel นั้น ไม่ใช่สิ่งที่สามารถทำได้ด้วยการคลิกเมาส์เพียงอย่างเดียว ไม่สามารถทำได้ในสองคลิกเช่นกัน โอกาสในการตรวจทานคอลัมน์ทั้งหมดในเวิร์กชีตของคุณและลบคอลัมน์ที่ว่างเปล่าด้วยตนเองเป็นสิ่งที่คุณต้องการหลีกเลี่ยงอย่างแน่นอน โชคดีที่ Microsoft Excel มีคุณลักษณะต่างๆ มากมาย และด้วยการใช้คุณลักษณะเหล่านี้อย่างสร้างสรรค์ คุณจะสามารถรับมือกับงานเกือบทุกอย่างได้!
วิธีที่รวดเร็วในการลบคอลัมน์ว่างที่คุณไม่ควรทำ ใช้
เมื่อพูดถึงการลบช่องว่างใน Excel (ไม่ว่าจะเป็นเซลล์ว่าง แถว หรือคอลัมน์) แหล่งข้อมูลออนไลน์จำนวนมากใช้ ไปที่แบบพิเศษ > ช่องว่าง คำสั่ง อย่าทำเช่นนั้น ในแผ่นงานของคุณ!
วิธีนี้ ( F5 > พิเศษ... > ช่องว่าง ) ค้นหา และเลือก เซลล์ว่างทั้งหมด ในช่วง:
หากตอนนี้คุณคลิกขวาที่เซลล์ที่เลือกแล้วเลือก ลบ > ทั้งคอลัมน์ คอลัมน์ทั้งหมดที่มี เซลล์ว่างอย่างน้อยหนึ่งเซลล์ จะหายไป! หากคุณทำอย่างนั้นโดยไม่ตั้งใจ ให้กด Ctrl + Z เพื่อให้ได้ทุกอย่างกลับคืนมา
ตอนนี้คุณรู้วิธีลบคอลัมน์ว่างใน Excel แบบผิดๆ แล้ว เรามาดูวิธีที่ถูกต้องกัน
วิธีลบคอลัมน์ว่างใน Excel ด้วย VBA
มีประสบการณ์ผู้ใช้ Excel รู้หลักการง่ายๆ นี้: อย่าเสียเวลาทำอะไรด้วยตนเอง ให้ลงทุนสักสองสามนาทีในการเขียนมาโครที่จะทำให้คุณโดยอัตโนมัติ
มาโคร VBA ด้านล่างจะลบคอลัมน์ว่างทั้งหมดในส่วนที่เลือก แนว. และทำสิ่งนี้ได้อย่างปลอดภัย - เฉพาะคอลัมน์ที่ว่างเปล่าเท่านั้นที่จะถูกลบ ถ้าคอลัมน์มีค่าเซลล์เดียว แม้แต่สตริงว่างที่ส่งคืนโดยสูตรบางอย่าง คอลัมน์ดังกล่าวจะยังคงอยู่
มาโคร Excel: ลบคอลัมน์ว่างออกจากแผ่นงาน Excel Public Sub DeleteEmptyColumns() Dim SourceRange As Range Dim EntireColumn As Range เมื่อเกิดข้อผิดพลาดดำเนินการต่อ ถัดไป ตั้งค่า SourceRange = Application.InputBox( _ "Select a range:" , "Delete Empty Columns" , _ Application.Selection.Address, Type :=8) ถ้าไม่ใช่ (SourceRange Is Nothing ) จากนั้น Application.ScreenUpdating = False สำหรับ i = SourceRange.Columns.Count To 1 Step -1 ตั้งค่า EntireColumn = SourceRange.Cells(1, i).EntireColumn ถ้า Application.WorksheetFunction.CountA(EntireColumn) = 0 จากนั้น EntireColumn.Delete End ถ้า Next Application.ScreenUpdating = True End ถ้า End Subวิธีใช้มาโครการลบคอลัมน์ว่าง
ต่อไปนี้เป็นขั้นตอนในการเพิ่มมาโครใน Excel ของคุณ:
- กด Alt + F11 เพื่อเปิด Visual Basic ตัวแก้ไข
- บนแถบเมนู คลิก แทรก > โมดูล .
- วางโค้ดข้างต้นในหน้าต่างโค้ด w.
- กด F5 เพื่อเรียกใช้มาโคร
- เมื่อกล่องโต้ตอบป๊อปอัปปรากฏขึ้น ให้สลับไปที่แผ่นงานที่สนใจ เลือกช่วงที่ต้องการ และคลิก ตกลง:
หากคุณไม่ต้องการเพิ่มมาโครในแผ่นงานของคุณ คุณสามารถเรียกใช้ได้จาก สมุดงานตัวอย่าง มีวิธีการดังนี้:
- ดาวน์โหลดสมุดงานตัวอย่างของเราเพื่อลบคอลัมน์ว่างใน Excel เปิดและเปิดใช้งานเนื้อหาหากได้รับแจ้ง
- เปิดสมุดงานของคุณเองหรือเปลี่ยนไปใช้สมุดงานที่เปิดไว้แล้ว
- ในสมุดงานของคุณ กด Alt + F8 เลือกมาโคร DeleteEmptyColumns แล้วคลิก เรียกใช้
- ในกล่องโต้ตอบป๊อปอัป ให้เลือก ช่วงและคลิก ตกลง .
ไม่ว่าจะด้วยวิธีใด คอลัมน์ว่างทั้งหมดในช่วงที่เลือกจะถูกกำจัด:
ระบุและลบคอลัมน์ว่างใน Excel ด้วยสูตร
มาโครด้านบนจะลบคอลัมน์ว่างอย่างรวดเร็วและเงียบ แต่ถ้าคุณเป็นคนประเภท "ควบคุมทุกอย่างให้อยู่ภายใต้การควบคุม" (เช่นฉัน :) คุณอาจต้องการเห็นคอลัมน์ที่กำลังจะถูกลบด้วยสายตา ในตัวอย่างนี้ อันดับแรก เราจะระบุคอลัมน์ว่างโดยใช้สูตร เพื่อให้คุณตรวจทานได้อย่างรวดเร็ว จากนั้นจึงตัดคอลัมน์เหล่านั้นทั้งหมดหรือบางส่วนออก
หมายเหตุ ก่อนที่จะลบสิ่งใดอย่างถาวร โดยเฉพาะอย่างยิ่งโดยใช้เทคนิคที่ไม่รู้จัก เราขอแนะนำให้คุณทำ สำเนาสำรอง ของสมุดงานของคุณ เพื่อความปลอดภัยหากมีข้อผิดพลาดเกิดขึ้น
ด้วย สำเนาสำรองในที่ปลอดภัย ทำตามขั้นตอนต่อไปนี้:
ขั้นตอนที่ 1. ใส่สำเนาใหม่แถว
เพิ่มแถวใหม่ที่ด้านบนสุดของตาราง ในการทำเช่นนี้ ให้คลิกขวาที่ส่วนหัวของแถวแรก แล้วคลิก แทรก ไม่ต้องกังวลว่าโครงสร้าง/การจัดเรียงข้อมูลของคุณจะยุ่งเหยิง คุณสามารถลบแถวนี้ได้ในภายหลัง
ขั้นตอนที่ 2. ระบุคอลัมน์ว่าง
ทางซ้ายสุด เซลล์ของแถวที่เพิ่มใหม่ ป้อนสูตรต่อไปนี้:
=COUNTA(A2:A1048576)=0
จากนั้น คัดลอกสูตรไปยังคอลัมน์อื่นๆ โดยการลากจุดจับเติม
ตรรกะของสูตร ง่ายมาก: COUNTA ตรวจสอบจำนวนเซลล์ว่างในคอลัมน์ ตั้งแต่แถว 2 ถึงแถว 1048576 ซึ่งเป็นแถวสูงสุดใน Excel 2019 - 2007 คุณเปรียบเทียบตัวเลขนั้นกับศูนย์ และผลลัพธ์ที่ได้คือ TRUE ในคอลัมน์ว่าง และ FALSE ในคอลัมน์ที่มีเซลล์ที่ไม่ว่างอย่างน้อยหนึ่งเซลล์ เนื่องจากใช้การอ้างอิงเซลล์แบบสัมพัทธ์ สูตรจึงปรับให้เหมาะสมสำหรับแต่ละคอลัมน์ที่มีการคัดลอก
ในกรณีที่คุณกำลังตั้งค่าเวิร์กชีตสำหรับคนอื่น คุณอาจ ต้องการติดป้ายชื่อคอลัมน์ในลักษณะที่มีความหมายมากขึ้น ไม่มีปัญหา สามารถทำได้ง่ายๆ ด้วยคำสั่ง IF ที่คล้ายกันนี้:
=IF(COUNTA(A2:A1048576)=0, "Blank", "Not blank")
ตอนนี้สูตรจะระบุอย่างชัดเจนว่าคอลัมน์ใดว่างเปล่าและคอลัมน์ใดไม่มี:
เคล็ดลับ เมื่อเปรียบเทียบกับแมโคร วิธีนี้ช่วยให้คุณมีความยืดหยุ่นมากขึ้นในการพิจารณาว่าคอลัมน์ใดควรว่างเปล่า ในตัวอย่างนี้ เราตรวจสอบทั้งตาราง รวมทั้งแถวส่วนหัว นั่นหมายความว่าถ้าคอลัมน์มีเฉพาะส่วนหัวเท่านั้น คอลัมน์ดังกล่าวจะไม่ถือว่าว่างเปล่าและไม่ถูกลบ หากคุณต้องการตรวจสอบเฉพาะแถวข้อมูล ละเว้นส่วนหัวของคอลัมน์ ให้ลบแถวส่วนหัวออกจากช่วงเป้าหมาย (A3:A1048576) ด้วยเหตุนี้ คอลัมน์ที่มีส่วนหัวและไม่มีข้อมูลอื่นในนั้นจะถือว่าว่างเปล่าและอาจถูกลบ นอกจากนี้ คุณสามารถจำกัดช่วงสำหรับแถวที่ใช้ล่าสุด ซึ่งในกรณีของเราคือ A11
ขั้นตอนที่ 3. ลบคอลัมน์ว่าง
เมื่อมีจำนวนคอลัมน์ที่เหมาะสม คุณเพียงแค่เลือก คอลัมน์ที่มี "ว่าง" ในแถวแรก (หากต้องการเลือกหลายคอลัมน์ ให้กดแป้น Ctrl ค้างไว้ขณะที่คุณคลิกตัวอักษรประจำคอลัมน์) จากนั้น คลิกขวาที่คอลัมน์ใดก็ได้ที่เลือก และเลือก ลบ จากเมนูบริบท:
หากมีคอลัมน์หลายสิบหรือหลายร้อยคอลัมน์ในเวิร์กชีตของคุณ มันสมเหตุสมผลแล้วที่จะนำอันที่ว่างเปล่าทั้งหมดมาดู สำหรับสิ่งนี้ ให้ทำดังต่อไปนี้:
- เลือกแถวบนสุดที่มีสูตร ไปที่แท็บ ข้อมูล > กลุ่มเรียงและกรอง แล้วคลิกปุ่ม จัดเรียง ปุ่ม
- ในกล่องโต้ตอบคำเตือนที่ปรากฏขึ้น เลือก ขยายส่วนที่เลือก แล้วคลิก จัดเรียง...
- สิ่งนี้จะเปิดกล่องโต้ตอบ จัดเรียง ซึ่งคุณคลิกปุ่ม ตัวเลือก... เลือก เรียงจากซ้ายไปขวา และ คลิก ตกลง .
- กำหนดค่าเพียงหนึ่งระดับการจัดเรียงตามที่แสดงด้านล่าง และคลิกตกลง:
- จัดเรียงตาม: แถว 1
- เรียงตาม: เซลล์ค่า
- ลำดับ: A ถึง Z
ด้วยเหตุนี้ คอลัมน์ว่างจะถูกย้ายไปยังส่วนด้านซ้ายของเวิร์กชีตของคุณ:
- เลือกคอลัมน์ว่างทั้งหมด - คลิกที่ตัวอักษรของคอลัมน์แรก กด Shift แล้วคลิกตัวอักษรของคอลัมน์ว่างสุดท้าย
- ขวา- คลิกคอลัมน์ที่เลือกและเลือก ลบ จากเมนูป๊อปอัป
เสร็จสิ้น! คุณได้กำจัดคอลัมน์ว่างแล้ว และไม่มีอะไรที่จะขัดขวางไม่ให้คุณลบแถวบนสุดที่มีสูตร
วิธีที่เร็วที่สุดในการลบคอลัมน์ว่างใน Excel
ใน ในตอนต้นของบทช่วยสอนนี้ ฉันเขียนว่าไม่มีวิธีคลิกเพียงครั้งเดียวเพื่อลบคอลัมน์ว่างใน Excel ในความเป็นจริงนั้นไม่จริงเลย ฉันควรจะบอกว่าไม่มีทางในตัว ผู้ใช้ Ultimate Suite ของเราสามารถลบช่องว่างใน Excel ได้ด้วยการคลิกเพียงไม่กี่ครั้ง :)
ในเวิร์กชีตเป้าหมาย เปลี่ยนไปที่แท็บ Ablebits Tools คลิก ลบช่องว่าง และเลือก คอลัมน์ว่าง :
เพื่อให้แน่ใจว่าไม่ใช่การคลิกเมาส์โดยไม่ได้ตั้งใจ Add-in จะขอให้คุณยืนยันว่า คุณต้องการลบคอลัมน์ว่างออกจากเวิร์กชีตจริงๆ:
คลิก ตกลง และในชั่วพริบตา คอลัมน์ว่างทั้งหมดจะหายไป!
เช่นเดียวกับมาโครที่กล่าวถึงข้างต้น เครื่องมือนี้จะลบเฉพาะคอลัมน์ที่ ว่างเปล่าจริงๆ คอลัมน์ที่มีค่าเดียว รวมทั้งส่วนหัวคือเก็บรักษาไว้
ลบช่องว่าง เป็นเพียงหนึ่งในคุณสมบัติที่ยอดเยี่ยมมากมายที่สามารถทำให้ชีวิตของคุณในฐานะผู้ใช้ Excel ง่ายขึ้น หากต้องการค้นหาเพิ่มเติม คุณสามารถดาวน์โหลด Ultimate Suite for Excel รุ่นทดลองใช้ได้
คอลัมน์ว่างจะไม่ถูกลบ! เพราะเหตุใด
ปัญหา : คุณได้ลองใช้วิธีข้างต้นทั้งหมดแล้ว แต่มีคอลัมน์ว่างอย่างน้อยหนึ่งคอลัมน์ติดอยู่ในเวิร์กชีตของคุณ เพราะเหตุใด
เป็นไปได้มากว่าเป็นเพราะคอลัมน์เหล่านั้นไม่ว่างเปล่าจริงๆ อักขระต่างๆ มากมายที่มองไม่เห็นด้วยตามนุษย์อาจแฝงตัวอยู่ในสเปรดชีต Excel โดยไม่มีใครสังเกตเห็น โดยเฉพาะอย่างยิ่งหากคุณนำเข้าข้อมูลจากแหล่งภายนอก ซึ่งอาจเป็นเพียงสตริงว่างหรืออักขระเว้นวรรค ช่องว่างที่ไม่เว้นวรรค หรืออักขระอื่นๆ ที่ไม่พิมพ์
หากต้องการตรึงตัวการ ให้เลือกเซลล์แรกในคอลัมน์ที่มีปัญหา แล้วกด Ctrl + ลูกศรลง . ตัวอย่างเช่น คอลัมน์ C ในภาพหน้าจอด้านล่างไม่เว้นว่างไว้เนื่องจากมีอักขระเว้นวรรคตัวเดียวใน C6:
ดับเบิลคลิกที่เซลล์เพื่อดูว่ามีอะไรอยู่ในนั้น หรือง่ายๆ กดปุ่ม Delete เพื่อกำจัดสิ่งที่ไม่รู้จัก จากนั้นทำซ้ำขั้นตอนข้างต้นเพื่อดูว่ามีสิ่งอื่นที่มองไม่เห็นในคอลัมน์นั้นหรือไม่ นอกจากนี้ คุณอาจต้องการล้างข้อมูลของคุณโดยการลบช่องว่างนำหน้า ต่อท้าย และไม่เว้นวรรค
ฉันขอขอบคุณที่อ่านและหวังว่าจะได้พบคุณในบล็อกของเราในสัปดาห์หน้า!