Ynhâldsopjefte
De tutorial sil jo leare hoe't jo lege kolommen yn Excel ferwiderje kinne mei in makro, formule en in knop-klik.
As triviaal as it klinkt, it wiskjen fan lege kolommen yn Excel is net iets dat kin wurde berikt mei in gewoan mûsklik. It kin ek net yn twa klikken dien wurde. It perspektyf om alle kolommen yn jo wurkblêd te besjen en de lege manuell te ferwiderjen is perfoarst iets dat jo wolle foarkomme. Gelokkich biedt Microsoft Excel in protte ferskillende funksjes, en troch dy funksjes op kreative manieren te brûken kinne jo hast elke taak oan!
Fluch manier om lege kolommen te wiskjen dy't jo noait moatte brûke
As it giet om it fuortheljen fan blanks yn Excel (as it no lege sellen, rigen of kolommen binne), fertrouwe in protte online boarnen op de Gean nei Spesjaal > Blanken kommando. Doch dat nea yn jo wurkblêden!
Dizze metoade ( F5 > Spesjaal... > Blanks ) fynt en selektearje alle lege sellen yn it berik:
As jo no rjochts klikke op de selektearre sellen en kies Wiskje > Hele kolom , alle kolommen dy't op syn minst ien lege sel befetsje soene ferlern gean! As jo dat per ongeluk dien hawwe, druk dan op Ctrl + Z om alles werom te krijen.
No't jo in ferkearde manier witte om lege kolommen yn Excel te wiskjen, litte wy sjen hoe't jo it goed dwaan kinne.
Hoe lege kolommen yn Excel fuortsmite mei VBA
ExperiencedExcel-brûkers kenne dizze thumbregel: gjin oeren fergrieme mei it dwaan fan wat mei de hân, ynvestearje in pear minuten yn it skriuwen fan in makro dy't it automatysk foar jo docht.
De ûndersteande VBA-makro ferwideret alle lege kolommen yn 'e selekteare berik. En it docht dit feilich - allinich absolút lege kolommen wurde wiske. As in kolom in inkele selwearde befettet, sels in lege tekenrige dy't troch ien of oare formule weromjûn wurdt, sil sa'n kolom yntakt bliuwe.
Excel-makro: lege kolommen fuortsmite fan Excel-blêd Public Sub DeleteEmptyColumns() Dim SourceRange As Range Dim EntireColumn As Range By flater Ferfetsje Folgjende Set SourceRange = Application.InputBox( _ "Selektearje in berik:" , "Lege kolommen wiskje" , _ Application.Selection.Address, Type :=8) As net (SourceRange Is Nothing ) Then Application.ScreenUpdating = False Foar i = SourceRange.Columns.Count To 1 Step -1 Set EntireColumn = SourceRange.Cells(1, i).EntireColumn If Application.WorksheetFunction.CountA(EntireColumn) = 0 Then EntireColumn.Delete End If Next Application.ScreenUpdating = True End As End SubHoe kinne jo de makro wiskje lege kolommen brûke
Hjir binne de stappen om de makro ta te foegjen oan jo Excel:
- Druk op Alt + F11 om de Visual Basic te iepenjen Bewurker.
- Klik op de menubalke Ynfoegje > Module .
- Plak de boppesteande koade yn it Code-windo w.
- Druk op F5 om de makro út te fieren.
- As it pop-up dialoochfinster ferskynt, skeakelje dan nei dewurkblêd fan belang, selektearje it winske berik en klikje op OK:
As jo gjin makro taheakje wolle oan jo wurkblêd, kinne jo it útfiere fan ús foarbyld wurkboek. Hjir is hoe:
- Download ús foarbyldwurkboek om lege kolommen yn Excel te ferwiderjen, iepenje it en aktivearje ynhâld as jo frege wurde.
- Iepenje jo eigen wurkboek of wikselje nei it al iepene.
- Druk yn jo wurkboek op Alt + F8 , selektearje de makro DeleteEmptyColumns , en klik op Utfiere .
- Selektearje yn it pop-updialoochfinster it berik en klikje op Okee .
Hoe dan ek, alle lege kolommen yn it selektearre berik wurde ferwidere:
Lege kolommen yn Excel identifisearje en wiskje mei in formule
De boppesteande makro ferwideret lege kolommen fluch en stil. Mar as jo in "hâld-alles-ûnder-kontrôle" soarte persoan binne (lykas ik bin :), dan kinne jo de kolommen dy't sille wurde fuortsmiten visueel sjen. Yn dit foarbyld sille wy earst lege kolommen identifisearje troch in formule te brûken sadat jo se fluch besjen kinne, en dan alle of guon fan dy kolommen eliminearje.
Opmerking. Foardat jo wat permanint wiskje, benammen troch in ûnbekende technyk te brûken, ried ik jo sterk oan om in reservekopy fan jo wurkboek te meitsjen, gewoan foar de feilige kant as der wat mis giet.
Mei in reservekopy op in feilich plak, fier de folgjende stappen:
Stap 1. Foegje in nije ynrige
Foegje in nije rige ta oan de boppekant fan jo tabel. Klikje hjirfoar mei rjochts op de koptekst fan 'e earste rige en klikje op Ynfoegje . Meitsje jo gjin soargen oer it ferbrekken fan de struktuer/arranzjemint fan jo gegevens - jo kinne dizze rige letter wiskje.
Stap 2. Identifisearje lege kolommen
Yn 'e lofterste linkerkant sel fan de nij tafoege rige, fier de folgjende formule yn:
=COUNTA(A2:A1048576)=0
En kopiearje dan de formule nei de oare kolommen troch de fillhandgreep te slepen.
De logika fan de formule is hiel ienfâldich: COUNTA kontrolearret it oantal blanks sellen yn 'e kolom, fan rige 2 oant rige 1048576, dat is in rige maksimum yn Excel 2019 - 2007. Jo fergelykje dat nûmer mei nul en, as resultaat, hawwe TRUE yn lege kolommen en FALSE yn 'e kolommen dy't op syn minst ien net-lege sel befetsje. Troch it brûken fan relative selferwizings past de formule goed oan foar elke kolom wêr't it kopiearre wurdt.
Yn gefal jo it wurkblêd foar in oar ynstelle kinne jo wolle de kolommen op in sinfollere manier beskriuwe. Gjin probleem, dit kin maklik dien wurde mei in IF-statement fergelykber mei dizze:
=IF(COUNTA(A2:A1048576)=0, "Blank", "Not blank")
No jout de formule eksplisyt oan hokker kolommen leech binne en hokker net:
Tip. Yn ferliking mei in makro jout dizze metoade jo mear fleksibiliteit oangeande hokker kolommen as leech moatte wurde beskôge. Yn dit foarbyld kontrolearje wy de hiele tabel, ynklusyf de koptekst. Dat betsjut as in kolombefettet mar in koptekst, sa'n kolom wurdt net as leech beskôge en wurdt net wiske. As jo allinich gegevensrijen kontrolearje wolle kolomkoppen negearje , fuortsmite dan de koptekstrige(n) út it doelberik (A3:A1048576). As resultaat sil in kolom dy't in koptekst hat en gjin oare gegevens deryn wurde achte leech en ûnder foarbehâld fan wiskjen. Ek kinne jo it berik beheine ta de lêste brûkte rige, dat soe wêze A11 yn ús gefal. dyjingen dy't "Leech" hawwe yn 'e earste rige (om meardere kolommen te selektearjen, hâld de Ctrl-toets yn as jo op de kolomletters klikke). Rjochtsklik dan op elke selektearre kolom en kies Wiskje út it kontekstmenu:
As der tsientallen of hûnderten kolommen yn jo wurkblêd binne, it hat sin om alle lege te sjen te bringen. Hjirfoar dwaan it folgjende:
- Selektearje de boppeste rige mei formules, gean nei de Data ljepper > Sortearje en filterje groep, en klikje op de Sortearje knop.
- Selektearje yn it warskôgingsdialoochfinster dat ferskynt De seleksje útwreidzje , en klikje op Sortearje...
- Dit sil it dialoochfinster Sortearje iepenje, wêr't jo op de knop Opsjes... klikke, Sortearje fan lofts nei rjochts, en selektearje klik op OK .
- Konfigurearje mar ien sortearringsnivo lykas hjirûnder werjûn en klik op OK:
- Sortearje op: Rige 1
- Sortearje op: SelWearden
- Oarder: A oant Z
As resultaat wurde de lege kolommen ferpleatst nei it linker diel fan jo wurkblêd:
- Selektearje alle lege kolommen - klik op de earste kolom letter, druk op Shift, en klik dan op de letter fan 'e lêste lege kolom.
- Rjochts- klik op de selektearre kolommen en kies Wiskje út it pop-up menu.
Klear! Jo binne de lege kolommen kwyt, en d'r is neat dat jo no foarkomme soe om de boppeste rige mei de formules te wiskjen.
Fastste manier om lege kolommen yn Excel te ferwiderjen
Yn de begjin fan dit tutorial skreau ik dat d'r gjin ien-klik manier is om lege kolommen yn Excel te wiskjen. Yn feite is dat net krekt wier. Ik hie sizze moatten dat d'r gjin ynboude manier is. De brûkers fan ús Ultimate Suite kinne spaasjes yn Excel letterlik yn in pear mûsklikken fuortsmite :)
Yn it doelwurkblêd, skeakelje nei it ljepblêd Ablebits-ark , klikje op Blanken wiskje en kies Lege kolommen :
Om der wis fan te wêzen dat dit net in tafallige mûsklik wie, sil de tafoeging jo freegje om te befêstigjen dat jo wolle echt lege kolommen fan dat wurkblêd fuortsmite:
Klik op OK , en yn in momint binne alle lege kolommen fuort!
Lykas de hjirboppe besprutsen makro, wisket dit ark allinich de kolommen dy't absolút leech binne. Kolommen dy't ien inkelde wearde hawwe, ynklusyf kopteksten, binnebewarre.
Blanks wiskje is mar ien fan tsientallen prachtige funksjes dy't jo libben as Excel-brûker makliker meitsje kinne. Om mear te finen, binne jo wolkom om in proefferzje fan ús Ultimate Suite foar Excel te downloaden.
Lege kolommen wurde net wiske! Wêrom?
Kwestje : Jo hawwe alle boppesteande metoaden besocht, mar ien of mear lege kolommen sitte fêst yn jo wurkblêd. Wêrom?
Meast wierskynlik om't dy kolommen net echt leech binne. In protte ferskillende karakters dy't ûnsichtber binne foar it minsklik each kinne ûngemurken yn jo Excel-spreadsheets lizze, foaral as jo ynformaasje ymporteare fan in eksterne boarne. Dat kin gewoan in lege tekenrige wêze as in spaasjeteken, net-brekkende spaasje of in oar net-printteken.
Om de dieder fêst te setten, selektearje de earste sel yn 'e problematyske kolom en druk op Ctrl + pylk nei ûnderen . Kolom C yn 'e skermôfbylding hjirûnder is bygelyks net leech fanwegen ien spaasjeteken yn C6:
Dûbelklikje op de sel om te sjen wat der eins yn sit of gewoan druk op de Delete-kaai om it ûnbekende iets kwyt te reitsjen. En werhelje dan it boppesteande proses om út te finen oft d'r oare ûnsichtbere dingen binne yn dy kolom. Jo kinne ek jo gegevens skjinmeitsje troch liedende, slepende en net-brekkende spaasjes te ferwiderjen.
Ik tankje jo foar it lêzen en hoopje jo nije wike op ús blog te sjen!