Paano tanggalin ang mga blangkong row sa Excel gamit ang VBA, mga formula at Power Query

  • Ibahagi Ito
Michael Brown

Tuturuan ka ng tutorial na ito ng ilang simpleng trick para magtanggal ng maraming walang laman na row sa Excel nang ligtas nang hindi nawawala ang kahit isang piraso ng impormasyon .

Ang mga blangkong row sa Excel ay isang problemang kinakaharap nating lahat paminsan-minsan, lalo na kapag pinagsasama-sama ang data mula sa iba't ibang mapagkukunan o nag-i-import ng impormasyon mula sa ibang lugar. Ang mga walang laman na linya ay maaaring magdulot ng maraming kalituhan sa iyong mga worksheet sa iba't ibang antas at ang pagtanggal sa mga ito nang manu-mano ay maaaring isang prosesong nakakaubos ng oras at madaling magkamali. Sa artikulong ito, matututo ka ng ilang simple at maaasahang paraan para mag-alis ng mga blangko sa iyong worksheet.

    Paano HINDI mag-alis ng mga blangkong linya sa Excel

    May ilang iba't ibang paraan upang tanggalin ang mga walang laman na linya sa Excel, ngunit nakakagulat na maraming online na mapagkukunan ang nananatili sa pinaka-mapanganib, ibig sabihin Hanapin & Piliin ang > Go To Special > Blanks .

    Ano ang mali sa diskarteng ito? Pinipili nito ang lahat ng blangko sa isang hanay, at dahil dito, tatanggalin mo ang lahat ng mga row na naglalaman ng kasing dami ng isang blangkong cell.

    Ipinapakita ng larawan sa ibaba ang orihinal na talahanayan sa kaliwa at ang resultang talahanayan sa kanan. At sa resultang talahanayan, nawala ang lahat ng hindi kumpletong row, kahit na ang row 10 kung saan ang petsa lang sa column D ang nawawala:

    The bottom line: kung ayaw mong guluhin ang iyong data, huwag na huwag magtanggal ng laman. mga hilera sa pamamagitan ng pagpili ng mga blangkong cell. Sa halip, gumamit ng isa sa mga mas isinasaalang-alang na diskarte na tinalakaygawing mas kumplikado ang mga bagay kaysa sa nararapat. Kaya, gumawa kami ng isang hakbang at gumawa ng dalawang-click na ruta upang tanggalin ang mga walang laman na row sa Excel.

    Sa idinagdag na Ultimate Suite sa iyong ribbon, narito kung paano mo tanggalin ang lahat ng walang laman na row sa isang worksheet:

    1. Sa tab na Ablebits Tools , sa grupong Transform , i-click ang Delete Blanks > Mga Empty Rows :
    2. Ipapaalam sa iyo ng add-in na ang lahat ng walang laman na row ay aalisin sa aktibong worksheet at hihilingin na kumpirmahin. I-click ang OK, at sa ilang sandali, ang lahat ng mga blangkong hilera ay aalisin.

    Tulad ng ipinapakita sa screenshot sa ibaba, tinanggal lang namin ang mga linyang ganap na blangko na walang isang cell na may data:

    Upang mahanap sa higit pang mga kahanga-hangang feature na kasama sa aming Ultimate Suite para sa Excel, maaari kang mag-download ng trial na bersyon.

    Salamat sa pagbabasa at umaasa akong makita ka sa aming blog sa susunod na linggo!

    sa ibaba.

    Paano mag-alis ng mga blangkong row sa Excel gamit ang VBA

    Maaaring ayusin ng Excel VBA ang maraming bagay, kabilang ang maraming walang laman na row. Ang pinakamagandang bagay tungkol sa diskarteng ito ay hindi ito nangangailangan ng anumang mga kasanayan sa programming. Basta, kunin ang isa sa mga code sa ibaba at patakbuhin ito sa iyong Excel (narito ang mga tagubilin).

    Macro 1. Tanggalin ang mga blangkong linya sa isang napiling hanay

    Tahimik na tinatanggal ng VBA code na ito ang lahat ng blangko mga row sa isang napiling hanay, nang hindi nagpapakita ng anumang mensahe o dialog box sa user.

    Hindi tulad ng nakaraang diskarte, ang macro ay nagde-delete ng linya kung ang buong row ay walang laman . Umaasa ito sa function ng worksheet na CountA upang makuha ang bilang ng mga walang laman na cell sa bawat linya, at pagkatapos ay tatanggalin ang mga row na may zero na bilang.

    Public Sub DeleteBlankRows() Dim SourceRange Bilang Range Dim EntireRow Bilang Range Set SourceRange = Application. Selection Kung Hindi (SourceRange Is Nothing ) Then Application.ScreenUpdating = False For I = SourceRange.Rows.Count To 1 Step -1 Set EntireRow = SourceRange.Cells(I, 1).EntireRow If Application.WorksheetFunction.CountA(EntireRow) = 0 Pagkatapos EntireRow.Delete End If Next Application.ScreenUpdating = True End If End Sub

    Upang bigyan ang user ng pagkakataong piliin ang target na hanay pagkatapos patakbuhin ang macro , gamitin ang code na ito:

    Pampubliko Sub RemoveBlankLines() Dim SourceRange Bilang Range Dim EntireRow Bilang Range Sa Error Ipagpatuloy ang Susunod na Set SourceRange = Application.InputBox( _"Pumili ng range:" , "Delete Blank Rows" , _ Application.Selection.Address, Type :=8) Kung Hindi (SourceRange Is Nothing ) Then Application.ScreenUpdating = False For I = SourceRange.Rows.Count To 1 Step - 1 Set EntireRow = SourceRange.Cells(I, 1).EntireRow If Application.WorksheetFunction.CountA(EntireRow) = 0 Then EntireRow.Delete End If Next Application.ScreenUpdating = True End If End Sub

    Sa pagtakbo, makikita ang macro sa sumusunod na kahon ng pag-input, pipiliin mo ang target na hanay, at i-click ang OK:

    Sa isang sandali, ang lahat ng mga walang laman na linya sa napiling hanay ay aalisin at ang mga natitira ay lilipat pataas:

    Macro 2. Tanggalin ang lahat ng blangkong row sa Excel

    Upang alisin ang lahat ng blangkong row sa aktibong sheet , tukuyin ang huling row ng ginamit na hanay (ibig sabihin, ang row na naglalaman ng huling cell na may data), at pagkatapos ay umakyat sa pagtanggal ng mga linya kung saan ang CountA ay nagbabalik ng zero:

    Sub DeleteAllEmptyRows() Dim LastRowIndex Bilang Integer Dim RowIndex Bilang Integer Dim UsedRng Bilang Range Set UsedRng = Activ eSheet.UsedRange LastRowIndex = UsedRng.Row - 1 + UsedRng.Rows.Count Application.ScreenUpdating = False Para sa RowIndex = LastRowIndex Hanggang 1 Step -1 Kung Application.CountA(Rows(RowIndex)) = 0 Pagkatapos Rows(RowIndex).Delete End Kung ang Next RowIndex Application.ScreenUpdating = True End Sub

    Macro 3. Tanggalin ang row kung blangko ang cell

    Gamit ang macro na ito, maaari mong tanggalin ang isang buong row kung ang isang cell sa tinukoy nablangko ang column.

    Sinusuri ng sumusunod na code ang column A para sa mga blangko. Upang tanggalin ang mga hilera batay sa isa pang column, palitan ang "A" ng naaangkop na titik.

    Sub DeleteRowIfCellBlank() Sa Error Ipagpatuloy ang Mga Susunod na Column( "A" ).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub

    Bilang isang Sa totoo lang, ginagamit ng macro ang feature na Go To Special > Blanks , at makakamit mo ang parehong resulta sa pamamagitan ng manu-manong pagsasagawa ng mga hakbang na ito.

    Tandaan. Tinatanggal ng macro ang mga blangkong hilera sa buong sheet , kaya mangyaring maging maingat kapag ginagamit ito. Bilang pag-iingat, maaaring matalinong i-back up ang worksheet bago patakbuhin ang macro na ito.

    Paano mag-alis ng mga blangkong linya sa Excel gamit ang VBA

    Upang tanggalin ang mga walang laman na row sa Excel gamit ang isang macro, ikaw maaaring ipasok ang VBA code sa iyong sariling workbook o magpatakbo ng macro mula sa aming sample na workbook.

    Magdagdag ng macro sa iyong workbook

    Upang magpasok ng macro sa iyong workbook, gawin ang mga hakbang na ito:

    1. Buksan ang worksheet kung saan mo gustong tanggalin ang mga blangkong row.
    2. Pindutin ang Alt + F11 upang buksan ang Visual Basic Editor.
    3. Sa kaliwang pane, i-right-click ThisWorkbook , at pagkatapos ay i-click ang Insert > Module .
    4. I-paste ang code sa Code window.
    5. Pindutin ang F5 upang patakbuhin ang macro.

    Para sa mga detalyadong sunud-sunod na tagubilin, pakitingnan ang Paano magpasok at gumamit ng VBA sa Excel.

    Magpatakbo ng macro mula sa aming sample na workbook

    I-download ang aming sampleworkbook na may Macros para Tanggalin ang Blank Rows at patakbuhin ang isa sa mga sumusunod na macro mula doon:

    DeleteBlankRows - inaalis ang mga walang laman na row sa kasalukuyang napiling hanay.

    RemoveBlankLines - tinatanggal ang mga blangkong row at inililipat pataas sa isang hanay na pipiliin mo pagkatapos patakbuhin ang macro.

    DeleteAllEmptyRows - tinatanggal ang lahat ng walang laman na linya sa aktibong sheet.

    DeleteRowIfCellBlank - nagtatanggal ng row kung blangko ang isang cell sa isang partikular na column.

    Upang patakbuhin ang macro sa iyong Excel, gawin ang sumusunod:

    1. Buksan ang nag-download ng workbook at paganahin ang mga macro kung sinenyasan.
    2. Buksan ang iyong sariling workbook at mag-navigate sa worksheet ng interes.
    3. Sa iyong worksheet, pindutin ang Alt + F8, piliin ang macro, at i-click ang Patakbuhin .

    Formula para tanggalin ang mga blangkong row sa Excel

    Kung sakaling gusto mong makita kung ano ang iyong tinatanggal, gamitin ang sumusunod na formula upang matukoy ang mga walang laman na linya:

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

    Kung saan ang A2 ang una at ang D2 ang huling ginamit na cell ng unang row ng data.

    Ilagay ang formula na ito a sa E2 o anumang iba pang blangkong column sa row 2, at i-drag ang fill handle upang kopyahin ang formula pababa.

    Bilang resulta, magkakaroon ka ng "Blank" sa mga walang laman na row at "Not blank" sa mga row na naglalaman ng hindi bababa sa isang cell na may data:

    Ang lohika ng formula ay halata: binibilang mo ang mga walang laman na mga cell na may function na COUNTA at ginagamit ang IF statement upang ibalik ang "Blank" para sa zero count, "Not Blank" kung hindi. .

    Sasa katunayan, magagawa mo nang maayos nang walang IF:

    =COUNTA(A2:D2)=0

    Sa kasong ito, ibabalik ng formula ang TRUE para sa mga blangkong linya at FALSE para sa mga hindi blangkong linya.

    Gamit ang formula, isagawa ang mga hakbang na ito upang tanggalin ang mga walang laman na linya:

    1. Pumili ng anumang cell sa row ng header at i-click ang Pagbukud-bukurin & I-filter > I-filter sa tab na Home , sa Mga Format Idaragdag nito ang pag-filter ng mga drop-down na arrow sa lahat ng mga cell ng header.
    2. I-click ang arrow sa header ng column ng formula, alisin ang tsek (Piliin Lahat), piliin ang Blanko at i-click ang OK :
    3. Piliin ang lahat ng na-filter na row . Para dito, mag-click sa unang cell ng unang na-filter na row at pindutin ang Ctrl + Shift + End para i-extend ang pagpili sa huling cell ng huling na-filter na row.
    4. I-right-click ang pagpili, piliin ang Tanggalin ang row mula sa menu ng konteksto, at pagkatapos ay kumpirmahin na gusto mo talagang tanggalin ang buong row:
    5. Alisin ang filter sa pamamagitan ng pagpindot sa Ctrl + Shift + L . O i-click ang tab na Home > Pagbukud-bukurin & I-filter > I-filter .
    6. Tanggalin ang column na may formula dahil hindi mo na ito kailangan.

    Iyon na! Bilang resulta, mayroon kaming malinis na talahanayan na walang mga blangkong linya, ngunit lahat ng impormasyon ay napanatili:

    Tip. Sa halip na tanggalin ang mga walang laman na linya, maaari mong kopyahin ang mga walang laman na row sa ibang lugar. Upang magawa ito, i-filter ang mga row na "Hindi blangko", piliin ang mga ito at pindutin ang Ctrl + C upang kopyahin. Pagkatapos ay lumipat saisa pang sheet, piliin ang kaliwang itaas na cell ng hanay ng patutunguhan at pindutin ang Ctrl + V para i-paste.

    Paano mag-alis ng mga walang laman na linya sa Excel gamit ang Power Query

    Sa Excel 2016 at Excel 2019, may isa pang paraan para tanggalin ang mga walang laman na row - sa pamamagitan ng paggamit ng tampok na Power Query. Sa Excel 2010 at Excel 2013, maaari itong i-download bilang add-in.

    Mahalagang paalala! Gumagana ang paraang ito sa sumusunod na caveat: Kino-convert ng Power Query ang source data sa isang Excel table at binabago ang pag-format tulad ng kulay ng fill, mga hangganan at ilang mga format ng numero. Kung mahalaga sa iyo ang pag-format ng iyong orihinal na data, mas mabuting pumili ka ng ibang paraan para alisin ang mga blangkong row sa Excel.

    1. Piliin ang hanay kung saan mo gustong tanggalin ang mga walang laman na linya.
    2. Pumunta sa tab na Data > Kunin ang & Ibahin ang pangkat at i-click ang Mula sa Talahanayan/Hanay . Ilo-load nito ang iyong talahanayan sa Power Query Editor.
    3. Sa tab na Home ng Power Query Editor, i-click ang Alisin ang Mga Row > Alisin ang Mga Blangkong Row .
    4. I-click ang Isara & I-load Ilo-load nito ang resultang talahanayan sa isang bagong worksheet at isasara ang Query Editor.

    Sa resulta ng mga manipulasyong ito, nakuha ko ang sumusunod na talahanayan nang walang mga walang laman na linya, ngunit may ilang masasamang pagbabago - nawala ang format ng currency at ipinapakita ang mga petsa sa default na format sa halip ng custom na isa:

    Paano magtanggal ng mga row kungcell sa isang partikular na column ay blangko

    Sa simula ng tutorial na ito, binalaan ka namin laban sa pag-alis ng mga walang laman na linya sa pamamagitan ng pagpili ng mga blangko. Gayunpaman, madaling gamitin ang pamamaraang ito kung gusto mong magtanggal ng mga row batay sa mga blangko sa isang partikular na column .

    Bilang halimbawa, alisin natin ang lahat ng row kung saan walang laman ang isang cell sa column A. :

    1. Piliin ang key column, column A sa aming kaso.
    2. Sa tab na Home , i-click ang Hanapin & Piliin ang > Pumunta sa Espesyal . O pindutin ang F5 at i-click ang button na Espesyal... .
    3. Sa dialog na Go To Special , piliin ang Blanks at i-click ang OK . Pipili ito ng mga blangkong cell sa ginamit na hanay sa column A.
    4. I-right click sa anumang napiling cell at piliin ang Tanggalin... mula sa menu ng konteksto.
    5. Sa Delete dialog box, piliin ang Buong row at i-click ang OK.

    Tapos na! Ang mga row na walang value sa column A ay wala na doon:

    Maaaring makamit ang parehong resulta sa pamamagitan ng pag-filter ng mga blangko sa key column.

    Paano mag-alis ng mga karagdagang linya sa ibaba ng data

    Minsan, ang mga row na mukhang ganap na blangko ay maaaring aktwal na naglalaman ng ilang mga format o hindi napi-print na mga character. Upang tingnan kung ang huling cell na may data ay talagang ang huling ginamit na cell sa iyong worksheet, pindutin ang Ctrl + End . Kung dinala ka nito sa isang visual na walang laman na row sa ibaba ng iyong data, sa mga tuntunin ng Excel, hindi blangko ang row na iyon. Upang alisin ang mga naturang row, gawin angsumusunod:

    1. I-click ang header ng unang blangko na row sa ibaba ng iyong data upang piliin ito.
    2. Pindutin ang Ctrl + Shift + End . Pipiliin nito ang lahat ng linyang naglalaman ng anumang bagay kabilang ang mga format, espasyo at hindi naka-print na mga character.
    3. I-right-click ang pagpili at piliin ang Tanggalin... > Buong row.

    Kung mayroon kang medyo maliit na set ng data, maaaring gusto mong alisin ang lahat ng mga blangkong linya sa ibaba ng iyong data, hal. para mapadali ang pag-scroll. Bagama't, walang paraan para tanggalin ang mga hindi nagamit na row sa Excel, walang makakapigil sa iyong itago ang mga ito. Ganito:

    1. Piliin ang row sa ibaba ng huling row na may data sa pamamagitan ng pag-click sa header nito.
    2. Pindutin ang Ctrl + Shift + Pababang arrow upang i-extend ang pagpili sa huling row sa sheet .
    3. Pindutin ang Ctrl + 9 upang itago ang mga napiling row. O i-right-click ang pagpili, at pagkatapos ay i-click ang Itago .

    Upang i-unhide ang mga row , pindutin ang Ctrl + A para piliin ang buong sheet, at pagkatapos ay pindutin ang Ctrl + Shift + 9 para makitang muli ang lahat ng linya.

    Sa katulad na paraan, maaari mong itago ang mga hindi nagamit na blangkong column sa kanan ng iyong data. Para sa mga detalyadong hakbang, pakitingnan ang Itago ang mga hindi nagamit na row sa Excel para tanging working area lang ang makikita.

    Pinakamabilis na paraan para alisin ang mga walang laman na row sa Excel

    Kapag nagbabasa ng mga nakaraang halimbawa, hindi ba parang gumagamit kami ng sledgehammer para pumutok ng nuwes? Dito, sa Ablebits, mas gusto naming huwag

    Si Michael Brown ay isang dedikadong mahilig sa teknolohiya na may hilig sa pagpapasimple ng mga kumplikadong proseso gamit ang mga tool sa software. Sa higit sa isang dekada ng karanasan sa industriya ng tech, hinasa niya ang kanyang mga kasanayan sa Microsoft Excel at Outlook, pati na rin ang Google Sheets at Docs. Ang blog ni Michael ay nakatuon sa pagbabahagi ng kanyang kaalaman at kadalubhasaan sa iba, na nagbibigay ng madaling sundan na mga tip at mga tutorial para sa pagpapabuti ng pagiging produktibo at kahusayan. Isa ka mang batikang propesyonal o baguhan, nag-aalok ang blog ni Michael ng mahahalagang insight at praktikal na payo para masulit ang mahahalagang software tool na ito.