Hoe om leë kolomme in Excel te verwyder

  • Deel Dit
Michael Brown

Die tutoriaal sal jou leer hoe om leë kolomme in Excel te verwyder met 'n makro, formule en 'n knoppie-klik.

So onbenullig as wat dit klink, die verwydering van leë kolomme in Excel is nie iets wat met 'n blote muisklik bereik kan word nie. Dit kan ook nie in twee kliek gedoen word nie. Die vooruitsig om al die kolomme in jou werkblad te hersien en die leë met die hand te verwyder, is beslis iets wat jy wil vermy. Gelukkig bied Microsoft Excel baie verskillende kenmerke, en deur daardie kenmerke op kreatiewe maniere te gebruik, kan jy byna enige taak hanteer!

    Vinnige manier om leë kolomme uit te vee wat jy nooit moet gebruik

    Wanneer dit kom by die verwydering van spasies in Excel (of dit leë selle, rye of kolomme is), maak baie aanlyn hulpbronne staat op die Gaan na Spesiale > Spasies bevel. Moet dit nooit in jou werkblaaie doen nie!

    Hierdie metode ( F5 > Spesiaal... > Blanks ) vind en kies alle leë selle in die reeks:

    As jy nou regsklik op die geselekteerde selle en kies Verwyder > Hele kolom , al die kolomme wat ten minste een leë sel bevat, sal verlore gaan! As jy dit per ongeluk gedoen het, druk Ctrl + Z om alles terug te kry.

    Noudat jy 'n verkeerde manier ken om leë kolomme in Excel uit te vee, kom ons kyk hoe om dit reg te doen.

    Hoe om leë kolomme in Excel te verwyder met VBA

    ExperiencedExcel-gebruikers ken hierdie reël: om nie ure te mors om iets handmatig te doen nie, belê 'n paar minute in die skryf van 'n makro wat dit outomaties vir jou sal doen.

    Die onderstaande VBA-makro verwyder alle leë kolomme in die geselekteerde reeks. En dit doen dit veilig - slegs absoluut leë kolomme word uitgevee. As 'n kolom 'n enkele selwaarde bevat, selfs 'n leë string wat deur een of ander formule teruggegee word, sal so 'n kolom ongeskonde bly.

    Excel-makro: verwyder leë kolomme van Excel-blad Public Sub DeleteEmptyColumns() Dim SourceRange As Range Dim EntireColumn As Range By Fout Hervat Volgende Stel SourceRange = Application.InputBox( _ "Kies 'n reeks:" , "Vee leë kolomme uit" , _ Application.Selection.Address, Type :=8) Indien nie (SourceRange Is Nothing ) Then Application.ScreenUpdating = False For i = SourceRange.Columns.Count To 1 Step -1 Stel EntireColumn = SourceRange.Cells(1, i).EntireColumn If Application.WorksheetFunction.CountA(EntireColumn) = 0 Then EntireColumn.Delete End If Next Application.ScreenUpdating = Ware End As End Sub

    Hoe om die verwyder leë kolomme makro te gebruik

    Hier is die stappe om die makro by jou Excel te voeg:

    1. Druk Alt + F11 om die Visual Basic oop te maak Redigeerder.
    2. Op die kieslysbalk, klik Voeg in > Module .
    3. Plak bogenoemde kode in die Kode-venster w.
    4. Druk F5 om die makro te laat loop.
    5. Wanneer die opspringdialoog verskyn, skakel oor na diewerkblad van belang, kies die verlangde reeks en klik OK:

    As jy nie 'n makro by jou werkblad wil voeg nie, kan jy dit vanaf ons voorbeeld werkboek. Dit is hoe:

    1. Laai ons voorbeeldwerkboek af om leë kolomme in Excel te verwyder, maak dit oop en aktiveer inhoud as dit gevra word.
    2. Maak jou eie werkboek oop of skakel oor na die reeds oopgemaakte een.
    3. In jou werkboek, druk Alt + F8 , kies die DeleteEmptyColumns makro, en klik Run .
    4. In die opspringdialoog, kies die reeks en klik OK .

    In elk geval, alle leë kolomme in die geselekteerde reeks sal weggedoen word:

    Identifiseer en skrap leë kolomme in Excel met 'n formule

    Bogenoemde makro verwyder leë kolomme vinnig en stil. Maar as jy 'n "hou-alles-onder-beheer" soort persoon is (soos ek :) wil jy dalk visueel die kolomme sien wat verwyder gaan word. In hierdie voorbeeld sal ons eers leë kolomme identifiseer deur 'n formule te gebruik sodat jy dit vinnig kan hersien, en dan alle of sommige van daardie kolomme uitskakel.

    Let wel. Voordat jy enigiets permanent uitvee, veral deur 'n onbekende tegniek te gebruik, raai ek jou sterk aan om 'n rugsteunkopie van jou werkboek te maak, net om op die veilige kant te wees as iets verkeerd gaan.

    Met 'n rugsteunkopie op 'n veilige plek, voer die volgende stappe uit:

    Stap 1. Voeg 'n nuwe inry

    Voeg 'n nuwe ry by die bokant van jou tabel. Hiervoor, regskliek op die eerste rykopskrif en klik Voeg in . Moenie bekommerd wees oor die manipulering van die struktuur/rangskikking van jou data nie - jy kan hierdie ry later uitvee.

    Stap 2. Identifiseer leë kolomme

    In die heel linkerkantste sel van die nuut bygevoegde ry, voer die volgende formule in:

    =COUNTA(A2:A1048576)=0

    En kopieer dan die formule na die ander kolomme deur die vulhandvatsel te sleep.

    Die formule se logika is baie eenvoudig: COUNTA kontroleer die aantal leë selle in die kolom, van ry 2 tot ry 1048576, wat 'n rymaksimum in Excel 2019 - 2007 is. Jy vergelyk daardie getal met nul en as gevolg daarvan, het WAAR in leë kolomme en ONWAAR in die kolomme wat ten minste een nie-leë sel bevat. As gevolg van die gebruik van relatiewe selverwysings, pas die formule behoorlik aan vir elke kolom waar dit gekopieer word.

    In die geval dat jy die werkblad vir iemand anders opstel, kan jy dalk wil die kolomme op 'n meer betekenisvolle wyse byskrifte gee. Geen probleem nie, dit kan maklik gedoen word met 'n IF-stelling soortgelyk aan hierdie:

    =IF(COUNTA(A2:A1048576)=0, "Blank", "Not blank")

    Nou dui die formule uitdruklik aan watter kolomme leeg is en watter nie:

    Wenk. In vergelyking met 'n makro, gee hierdie metode jou meer buigsaamheid ten opsigte van watter kolomme as leeg beskou moet word. In hierdie voorbeeld gaan ons die hele tabel na, insluitend die kopry. Dit beteken as 'n kolomslegs 'n opskrif bevat, word so 'n kolom nie as leeg beskou nie en word nie geskrap nie. As jy net datarye ignoreer kolomopskrifte wil nagaan, verwyder die kopry(s) uit die teikenreeks (A3:A1048576). Gevolglik sal 'n kolom met 'n kopskrif en geen ander data daarin nie as leeg beskou word en onderhewig wees aan uitgevee. Jy kan ook die reeks beperk tot die laaste gebruikte ry, wat in ons geval A11 sal wees.

    Stap 3. Verwyder leë kolomme

    Om 'n redelike aantal kolomme te hê, kan jy eenvoudig kies dié wat "Leë" in die eerste ry het (om veelvuldige kolomme te kies, hou die Ctrl-sleutel in terwyl jy op die kolomletters klik). Regskliek dan op enige geselekteerde kolom, en kies Vee uit in die kontekskieslys:

    As daar tiene of honderde kolomme in jou werkblad is, dit maak sin om alle leës te sien. Doen hiervoor die volgende:

    1. Kies die boonste ry met formules, gaan na die Data -oortjie > Sorteer en Filter -groep, en klik die Sorteer -knoppie.
    2. In die waarskuwingsdialoogkassie wat verskyn, kies Brei die keuse uit en klik Sorteer...

    3. Dit sal die Sorteer -dialoogkassie oopmaak, waar jy die Opsies... -knoppie klik, Sorteer links na regs, en kies klik OK .

    4. Konfigureer net een sorteervlak soos hieronder getoon en klik OK:
      • Sorteer volgens: Ry 1
      • Sorteer op: SelWaardes
      • Orde: A tot Z

      As gevolg hiervan sal die leë kolomme na die linkerdeel van jou werkblad geskuif word:

    5. Kies alle leë kolomme - klik op die eerste kolomletter, druk Shift, en klik dan op die letter van die laaste leë kolom.
    6. Regs- klik op die geselekteerde kolomme en kies Vee uit uit die opwipkieslys.

    Klaar! Jy het ontslae geraak van die leë kolomme, en daar is niks wat jou nou sal verhoed om die boonste ry met die formules uit te vee nie.

    Vinnigste manier om leë kolomme in Excel te verwyder

    In die begin van hierdie tutoriaal het ek geskryf dat daar geen een-klik manier is om leë kolomme in Excel uit te vee nie. Trouens, dit is nie presies waar nie. Ek moes gesê het daar is geen ingeboude manier nie. Die gebruikers van ons Ultimate Suite kan spasies in Excel letterlik in 'n paar kliks verwyder :)

    Wak in die teikenwerkblad oor na die Ablebits Tools -oortjie, klik Delete Blanks en kies Leë kolomme :

    Om seker te maak dat dit nie 'n toevallige muisklik was nie, sal die byvoeging jou vra om te bevestig dat jy wil regtig leë kolomme van daardie werkblad verwyder:

    Klik OK , en in 'n oomblik is alle leë kolomme weg!

    Soos die makro wat hierbo bespreek is, verwyder hierdie hulpmiddel slegs daardie kolomme wat absoluut leeg is . Kolomme wat enige enkele waarde het, insluitend opskrifte, isbewaar.

    Delete Blanks is net een van tientalle wonderlike kenmerke wat jou lewe as 'n Excel-gebruiker makliker kan maak. Om meer te kry, is jy welkom om 'n proefweergawe van ons Ultimate Suite for Excel af te laai.

    Leë kolomme word nie uitgevee nie! Hoekom?

    Kwestie : Jy het al die bogenoemde metodes probeer, maar een of meer leë kolomme is vas in jou werkblad. Hoekom?

    Heel waarskynlik omdat daardie kolomme nie regtig leeg is nie. Baie verskillende karakters wat onsigbaar is vir die menslike oog, kan ongemerk in jou Excel-sigblaaie skuil, veral as jy inligting van 'n eksterne bron af ingevoer het. Dit kan 'n blote leë string of 'n spasiekarakter, onbreekbare spasie of 'n ander nie-drukkarakter wees.

    Om die skuldige vas te pen, kies die eerste sel in die problematiese kolom en druk Ctrl + afpyltjie . Byvoorbeeld, kolom C in die skermkiekie hieronder is nie leeg nie as gevolg van 'n enkele spasiekarakter in C6:

    Dubbelklik op die sel om te sien wat werklik daarin is of eenvoudig druk die Delete-sleutel om van die onbekende iets ontslae te raak. En herhaal dan die bogenoemde proses om uit te vind of daar enige ander onsigbare dinge in daardie kolom is. Jy sal dalk ook jou data wil skoonmaak deur voorste, agterste en nie-breek spasies te verwyder.

    Ek bedank jou vir die lees en hoop om jou volgende week op ons blog te sien!

    Michael Brown is 'n toegewyde tegnologie-entoesias met 'n passie om komplekse prosesse te vereenvoudig deur sagteware-instrumente te gebruik. Met meer as 'n dekade se ondervinding in die tegnologiebedryf, het hy sy vaardighede in Microsoft Excel en Outlook, sowel as Google Sheets en Docs, opgeskerp. Michael se blog is toegewy daaraan om sy kennis en kundigheid met ander te deel, en verskaf maklik-om-te volg wenke en tutoriale vir die verbetering van produktiwiteit en doeltreffendheid. Of jy nou 'n ervare professionele persoon of 'n beginner is, Michael se blog bied waardevolle insigte en praktiese raad om die meeste uit hierdie noodsaaklike sagteware-nutsmiddels te kry.