Як выдаліць пустыя радкі ў Excel з дапамогай VBA, формул і Power Query

  • Падзяліцца Гэтым
Michael Brown

Гэты падручнік навучыць вас некалькім простым прыёмам бяспечнага выдалення некалькіх пустых радкоў у Excel без страты ніводнага біта інфармацыі .

Пустыя радкі ў Excel - гэта праблема, з якой мы ўсе сутыкаемся час ад часу, асабліва пры аб'яднанні даных з розных крыніц або пры імпарце інфармацыі аднекуль яшчэ. Пустыя радкі могуць нанесці вялікую шкоду вашым аркушам на розных узроўнях, а іх выдаленне ўручную можа заняць шмат часу і схільны да памылак працэс. У гэтым артыкуле вы даведаецеся пра некалькі простых і надзейных метадаў выдалення пустых радкоў у працоўных лістах.

    Як НЕ выдаляць пустыя радкі ў Excel

    Ёсць некалькі розныя спосабы выдалення пустых радкоў у Excel, але на здзіўленне шмат інтэрнэт-рэсурсаў прытрымліваюцца найбольш небяспечнага, а менавіта Знайсці & Выберыце > Перайсці да спецыяльных > Пусты .

    Што не так з гэтай тэхнікай? Ён выбірае ўсе прабелы ў дыяпазоне, і, такім чынам, вы ў канчатковым выніку выдаляеце ўсе радкі, якія змяшчаюць як адну пустую ячэйку.

    На малюнку ніжэй паказана зыходная табліца злева і атрыманая табліца справа. І ў выніковай табліцы зніклі ўсе няпоўныя радкі, нават радок 10, у якім адсутнічала толькі дата ў слупку D:

    Сутнасць: калі вы не хочаце сапсаваць свае даныя, ніколі не выдаляйце пустыя радкі, выбіраючы пустыя вочкі. Замест гэтага выкарыстоўвайце адзін з разгляданых падыходаўзрабіць рэчы больш складанымі, чым яны павінны быць. Такім чынам, мы пайшлі яшчэ далей і стварылі маршрут у два клікі для выдалення пустых радкоў у Excel.

    Калі да вашай стужкі дададзены Ultimate Suite, вось як вы можаце выдаліць усе пустыя радкі на аркушы:

    1. На ўкладцы Ablebits Tools у групе Transform націсніце Delete Blanks > Пустыя радкі :
    2. Надбудова паведаміць вам, што ўсе пустыя радкі будуць выдалены з актыўнага аркуша, і папросіць пацвердзіць. Націсніце OK, і праз імгненне ўсе пустыя радкі будуць выдалены.

    Як паказана на скрыншоце ніжэй, мы выдалілі толькі абсалютна пустыя радкі , якія не маюць ніводнай ячэйкі з дадзенымі:

    Каб знайсці больш дзіўных функцый, якія ўваходзяць у наш Ultimate Suite for Excel, вы можаце спампаваць пробную версію.

    Я дзякую вам за чытанне і спадзяюся ўбачыць вас у нашым блогу на наступным тыдні!

    ніжэй.

    Як выдаліць пустыя радкі ў Excel з дапамогай VBA

    Excel VBA можа выправіць шмат рэчаў, у тым ліку некалькі пустых радкоў. Самае лепшае ў гэтым падыходзе - гэта тое, што ён не патрабуе навыкаў праграмавання. Проста вазьміце адзін з прыведзеных ніжэй кодаў і запусціце яго ў Excel (інструкцыі знаходзяцца тут).

    Макрас 1. Выдаліць пустыя радкі ў выбраным дыяпазоне

    Гэты код VBA моўчкі выдаляе ўсе пустыя радкоў у абраным дыяпазоне, не паказваючы карыстальнікам ніякіх паведамленняў або дыялогавых вокнаў.

    У адрозненне ад папярэдняй тэхнікі, макрас выдаляе радок, калі ўвесь радок пусты . Ён абапіраецца на функцыю працоўнага ліста CountA, каб атрымаць колькасць непустых вочак у кожным радку, а затым выдаляе радкі з нулявым лікам.

    Public Sub DeleteBlankRows() Dim SourceRange As Range Dim EntireRow As Range Set SourceRange = Application. Selection If Not (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

    Каб даць карыстальніку магчымасць выбраць мэтавы дыяпазон пасля запуску макраса , выкарыстоўвайце гэты код:

    Public Sub RemoveBlankLines() Dim SourceRange As Range Dim EntireRow As Range On Error Resume Next Set SourceRange = Application.InputBox( _"Выберыце дыяпазон:" , "Выдаліць пустыя радкі" , _ Application.Selection.Address, увядзіце :=8) Калі не (SourceRange - гэта нішто), то 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

    Пасля запуску макрас паказвае у наступным полі ўводу, вы выбіраеце мэтавы дыяпазон і націскаеце OK:

    Праз імгненне ўсе пустыя радкі ў абраным дыяпазоне будуць выдалены, а тыя, што засталіся, зрушваюцца ўверх:

    Макрас 2. Выдаліць усе пустыя радкі ў Excel

    Каб выдаліць усе пустыя радкі на актыўным аркушы , вызначце апошні радок выкарыстоўванага дыяпазону (г.зн. радок, які змяшчае апошняя ячэйка з дадзенымі), а потым ідзіце ўверх, выдаляючы радкі, для якіх CountA вяртае нуль:

    Sub DeleteAllEmptyRows() Dim LastRowIndex As Integer Dim RowIndex As Integer Dim UsedRng As Range Set UsedRng = Activ eSheet.UsedRange LastRowIndex = UsedRng.Row - 1 + UsedRng.Rows.Count Application.ScreenUpdating = False For RowIndex = LastRowIndex To 1 Step -1 If Application.CountA(Rows(RowIndex)) = 0 Then Rows(RowIndex).Delete End If Next RowIndex Application.ScreenUpdating = True End Sub

    Macro 3. Выдаліць радок, калі ячэйка пустая

    З дапамогай гэтага макраса вы можаце выдаліць увесь радок, калі ячэйка ў паказанымслупок пусты.

    Наступны код правярае слупок A на прабелы. Каб выдаліць радкі на падставе іншага слупка, заменіце "A" адпаведнай літарай.

    Sub DeleteRowIfCellBlank() On Error Resume Next Columns( "A" ).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub

    As a насамрэч, макрас выкарыстоўвае функцыю Перайсці да спецыяльных > Пустых месцаў , і вы можаце дасягнуць таго ж выніку, выканаўшы гэтыя дзеянні ўручную.

    Заўвага. Макрас выдаляе пустыя радкі на ўсім аркушы , таму, калі ласка, будзьце вельмі асцярожныя пры яго выкарыстанні. У якасці меры засцярогі можа быць разумным зрабіць рэзервовую копію аркуша перад запускам гэтага макраса.

    Як выдаліць пустыя радкі ў Excel з дапамогай VBA

    Каб выдаліць пустыя радкі ў Excel з дапамогай макраса, вы можна альбо ўставіць код VBA ў вашу ўласную працоўную кнігу, альбо запусціць макрас з нашага ўзору працоўнай кнігі.

    Дадайце макрас у сваю працоўную кнігу

    Каб уставіць макрас у вашу працоўную кнігу, выканайце наступныя дзеянні:

    1. Адкрыйце аркуш, дзе вы хочаце выдаліць пустыя радкі.
    2. Націсніце Alt + F11, каб адкрыць рэдактар ​​Visual Basic.
    3. На левай панэлі пстрыкніце правай кнопкай мышы ThisWorkbook , а затым націсніце Insert > Module .
    4. Устаўце код у акно Code.
    5. Націсніце F5 каб запусціць макрас.

    Падрабязныя пакрокавыя інструкцыі глядзіце, як уставіць і выкарыстоўваць VBA ў Excel.

    Запусціце макрас з нашага ўзору кнігі

    Спампуйце наш узоррабочая кніга з макрасамі для выдалення пустых радкоў і запусціце адтуль адзін з наступных макрасаў:

    DeleteBlankRows - выдаляе пустыя радкі ў выбраным дыяпазоне.

    RemoveBlankLines - выдаляе пустыя радкі і зрушвае ўверх дыяпазон, які вы выбіраеце пасля запуску макраса.

    DeleteAllEmptyRows - выдаляе ўсе пустыя радкі на актыўным аркушы.

    DeleteRowIfCellBlank - выдаляе радок, калі ячэйка ў пэўным слупку пустая.

    Каб запусціць макрас у вашым Excel, зрабіце наступнае:

    1. Адкрыйце запампаваў працоўную кнігу і ўключыце макрасы, калі будзе прапанавана.
    2. Адкрыйце ўласную працоўную кнігу і перайдзіце да працоўнага аркуша, які вас цікавіць.
    3. На працоўным аркушы націсніце Alt + F8, абярыце макрас і націсніце Выканаць .

    Формула для выдалення пустых радкоў у Excel

    Калі вы хочаце паглядзець, што вы выдаляеце, выкарыстоўвайце наступную формулу для вызначэння пустых радкоў:

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

    Дзе A2 - першая, а D2 - апошняя выкарыстаная ячэйка першага радка даных.

    Увядзіце гэту формулу a ў E2 або любым іншым пустым слупку ў радку 2, і перацягніце маркер запаўнення, каб скапіяваць формулу ўніз.

    У выніку вы атрымаеце «Пусты» ў пустых радках і «Не пусты» ў радках якія змяшчаюць прынамсі адну ячэйку з дадзенымі:

    Логіка формулы відавочная: вы падлічваеце непустыя вочкі з дапамогай функцыі COUNTA і выкарыстоўваеце аператар IF, каб вярнуць «Пустое» для нулявога падліку, «Не пустое» ў адваротным выпадку .

    Унасамрэч, вы можаце абысціся без IF:

    =COUNTA(A2:D2)=0

    У гэтым выпадку формула верне TRUE для пустых радкоў і FALSE для непустых радкоў.

    З дапамогай формула на месцы, выканайце наступныя дзеянні, каб выдаліць пустыя радкі:

    1. Выберыце любую ячэйку ў радку загалоўка і націсніце Сартаваць & Filter > Filter на ўкладцы Home у Formats Гэта дадасць стрэлкі выпадальнага меню фільтрацыі ва ўсе ячэйкі загалоўкаў.
    2. Націсніце стрэлку ў загалоўку слупка формулы, зніміце сцяжок (Выбраць усе), абярыце Пусты і націсніце ОК :
    3. Вылучыце ўсе адфільтраваныя радкі . Для гэтага пстрыкніце першую ячэйку першага адфільтраванага радка і націсніце Ctrl + Shift + End, каб пашырыць вылучэнне да апошняй ячэйкі апошняга адфільтраванага радка.
    4. Пстрыкніце вылучэнне правай кнопкай мышы, абярыце Выдаліце ​​радок з кантэкстнага меню, а потым пацвердзіце, што вы сапраўды жадаеце выдаліць цэлыя радкі:
    5. Выдаліце ​​фільтр, націснуўшы Ctrl + Shift + L . Ці пстрыкніце ўкладку Галоўная > Сартаваць & Фільтр > Фільтр .
    6. Выдаліце ​​слупок з формулай, бо ён вам больш не патрэбны.

    Вось і ўсё! У выніку мы маем чыстую табліцу без пустых радкоў, але захаваную ўсю інфармацыю:

    Савет. Замест выдалення пустых радкоў вы можаце скапіяваць непустыя радкі ў іншае месца. Каб зрабіць гэта, адфільтруйце радкі «Не пустыя», вылучыце іх і націсніце Ctrl + C, каб скапіяваць. Затым пераключыцеся наіншы аркуш, выберыце верхнюю левую ячэйку дыяпазону прызначэння і націсніце Ctrl + V, каб уставіць.

    Як выдаліць пустыя радкі ў Excel з дапамогай Power Query

    У Excel 2016 і Excel 2019, ёсць яшчэ адзін спосаб выдалення пустых радкоў - з дапамогай функцыі Power Query. У Excel 2010 і Excel 2013 яго можна загрузіць як надбудову.

    Важная заўвага! Гэты метад працуе з наступнай агаворкай: Power Query пераўтворыць зыходныя даныя ў табліцу Excel і змяняе фарматаванне, такое як колер залівання, рамкі і некаторыя фарматы лікаў. Калі фарматаванне вашых зыходных даных важна для вас, тады вам лепш выбраць іншы спосаб выдалення пустых радкоў у Excel.

    1. Выберыце дыяпазон, у якім вы хочаце выдаліць пустыя радкі.
    2. Перайдзіце на ўкладку Дадзеныя > Атрымаць & Ператварыце групу і націсніце З табліцы/дыяпазону . Гэта загрузіць вашу табліцу ў рэдактар ​​Power Query.
    3. На ўкладцы Галоўная рэдактара Power Query націсніце Выдаліць радкі > Выдаліць пустыя радкі .
    4. Націсніце Зачыніць & Load Гэта загрузіць атрыманую табліцу на новы аркуш і закрые рэдактар ​​запытаў.

    У выніку гэтых маніпуляцый я атрымаў наступную табліцу без пустых радкоў, але з парай непрыемных змен - фармат валюты страчаны, а даты адлюстроўваюцца ў фармаце па змаўчанні замест карыстацкага:

    Як выдаліць радкі, каліячэйка ў пэўным слупку пустая

    У пачатку гэтага падручніка мы перасцерагалі вас ад выдалення пустых радкоў шляхам выбару прабелаў. Аднак гэты метад спатрэбіцца, калі вы хочаце выдаліць радкі на аснове прабелаў у пэўным слупку .

    У якасці прыкладу давайце выдалім усе радкі, у якіх ячэйка ў слупку A пустая :

    1. Абярыце ключавы слупок, у нашым выпадку слупок A.
    2. На ўкладцы Галоўная націсніце Знайсці & Выберыце > Перайсці да спецыяльных . Ці націсніце клавішу F5 і націсніце кнопку Спецыяльныя... .
    3. У дыялогавым акне Перайсці да спецыяльнага выберыце Пустыя месцы і націсніце ОК . Гэта дазволіць выбраць пустыя ячэйкі ў выкарыстоўваным дыяпазоне ў слупку A.
    4. Пстрыкніце правай кнопкай мышы на любой вылучанай ячэйцы і абярыце Выдаліць… з кантэкстнага меню.
    5. У дыялогавым акне Выдаліць абярыце Увесь радок і націсніце OK.

    Гатова! Радкоў, якія не маюць значэнняў у слупку A, больш няма:

    Таго ж выніку можна дасягнуць, адфільтраваўшы прабелы ў слупку ключоў.

    Як выдаліць лішнія радкі пад дадзенымі

    Часам радкі, якія выглядаюць зусім пустымі, могуць утрымліваць некаторыя фарматы або недрукаваныя сімвалы. Каб праверыць, ці сапраўды апошняя ячэйка з дадзенымі з'яўляецца апошняй выкарыстанай ячэйкай на вашым аркушы, націсніце Ctrl + End . Калі гэта прывяло вас да візуальна пустога радка пад вашымі дадзенымі, з пункту гледжання Excel, гэты радок не пусты. Каб выдаліць такія радкі, зрабіценаступнае:

    1. Націсніце загаловак першага пустога радка пад вашымі дадзенымі, каб выбраць яго.
    2. Націсніце Ctrl + Shift + End . Гэта дазволіць вылучыць усе радкі, якія ўтрымліваюць што-небудзь, уключаючы фарматы, прабелы і недрукаваныя сімвалы.
    3. Пстрыкніце вылучэнне правай кнопкай мышы і абярыце Выдаліць… > Увесь радок.

    Калі ў вас адносна невялікі набор даных, вы можаце пазбавіцца ад усіх пустых радкоў пад вашымі данымі, напрыклад. каб палегчыць пракрутку. Нягледзячы на ​​тое, што няма магчымасці выдаліць невыкарыстоўваныя радкі ў Excel, няма нічога, што перашкодзіла б вам схаваць іх. Вось як:

    1. Выберыце радок пад апошнім радком з дадзенымі, націснуўшы на яго загаловак.
    2. Націсніце Ctrl + Shift + стрэлка ўніз, каб пашырыць вылучэнне да апошняга радка на аркушы .
    3. Націсніце Ctrl + 9, каб схаваць вылучаныя радкі. Ці пстрыкніце вылучэнне правай кнопкай мышы, а затым націсніце Схаваць .

    Каб паказаць радкі , націсніце Ctrl + A, каб вылучыць увесь аркуш, а потым націсніце Ctrl + Shift + 9, каб зноў зрабіць усе радкі бачнымі.

    Аналагічным чынам вы можаце схаваць нявыкарыстаныя пустыя слупкі справа ад вашых дадзеных. Падрабязныя крокі глядзіце ў раздзеле «Схаванне невыкарыстоўваемых радкоў у Excel, каб была бачная толькі рабочая вобласць».

    Самы хуткі спосаб выдаліць пустыя радкі ў Excel

    Чытаючы папярэднія прыклады, ці не так адчуваеце, што мы выкарыстоўвалі кувалду, каб раскалоць арэх? Тут, у Ablebits, мы аддаем перавагу гэтага не рабіць

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.