Excel дээрх хоосон мөрүүдийг VBA, томьёо болон Power Query ашиглан хэрхэн устгах вэ

  • Үүнийг Хуваалц
Michael Brown

Энэ заавар нь Excel-ийн олон хоосон мөрийг нэг ч бит мэдээлэл алдалгүйгээр устгах хэд хэдэн энгийн аргуудыг заах болно .

Excel дээрх хоосон мөрүүд нь бид бүгдэд тулгардаг асуудал юм. хааяа, ялангуяа өөр өөр эх сурвалжаас авсан өгөгдлийг нэгтгэх эсвэл өөр газраас мэдээлэл импортлох үед. Хоосон мөрүүд нь янз бүрийн түвшинд таны ажлын хуудсанд маш их хохирол учруулж болзошгүй бөгөөд тэдгээрийг гараар устгах нь цаг хугацаа шаардсан, алдаа гаргадаг процесс байж болно. Энэ нийтлэлээс та ажлын хуудаснаасаа хоосон мөрийг арилгах хэд хэдэн энгийн бөгөөд найдвартай аргуудыг сурах болно.

    Excel дээр хоосон мөрүүдийг хэрхэн АРИЛГАХГҮЙ

    Цөөн хэдэн зүйл байна. Excel-ийн хоосон мөрүүдийг устгах янз бүрийн аргууд байдаг ч гайхалтай олон онлайн эх сурвалжууд хамгийн аюултай, тухайлбал Ол & AMP; > Тусгай руу очих > Хоосон зай -г сонгоно уу.

    Энэ техникт юу нь буруу байна вэ? Энэ нь муж дахь бүх хоосон зайг сонгох бөгөөд ингэснээр та нэг хоосон нүдтэй тэнцэх хэмжээний бүх мөрийг устгах болно.

    Доорх зурганд зүүн талд байгаа анхны хүснэгт болон үр дүнгийн хүснэгт баруун талд. Хүснэгтэд зөвхөн D баганад байгаа огноо дутуу байсан 10-р мөр хүртэл алга болсон байна:

    Дээрх мөр: хэрэв та өөрийн өгөгдлөө будлиулахыг хүсэхгүй байгаа бол хоосон мөрүүдийг хэзээ ч устгаж болохгүй. хоосон нүднүүдийг сонгох замаар эгнээ. Үүний оронд хэлэлцсэн илүү анхаарч үзсэн аргуудын аль нэгийг ашиглазүйлсийг байх ёстойгоос нь илүү төвөгтэй болгох. Тиймээс бид Excel-д хоёр товшилтоор хоосон мөрүүдийг устгах замыг үүсгэсэн.

    Таны туузанд Ultimate Suite-г нэмснээр бүх хоосон мөрүүдийг устгах боломжтой. ажлын хуудсанд:

    1. Ablebits Tools табын Transform бүлгийн Хоосон хоосон зайг устгах > дээр товшино уу. Хоосон мөрүүд :
    2. Нэмэлт нь идэвхтэй ажлын хуудаснаас бүх хоосон мөрүүдийг устгах гэж байгааг мэдэгдэж, баталгаажуулахыг хүсэх болно. OK товчийг дарж, хормын дараа бүх хоосон мөр арилах болно.

    Доорх дэлгэцийн агшинд харуулсанчлан бид зөвхөн өгөгдөл бүхий нэг нүдгүй үнэхээр хоосон мөрүүдийг устгасан:

    Олохын тулд Excel-д зориулсан Ultimate Suite-д багтсан илүү гайхалтай боломжуудыг авахын тулд та туршилтын хувилбарыг татаж авахыг урьж байна.

    Уншсанд баярлалаа, ирэх долоо хоногт тантай манай блог дээр уулзана гэж найдаж байна!

    доор.

    Excel дээр хоосон мөрүүдийг VBA-аар хэрхэн арилгах талаар

    Excel VBA нь олон хоосон мөр зэрэг олон зүйлийг засах боломжтой. Энэ аргын хамгийн сайн тал нь ямар ч програмчлалын ур чадвар шаарддаггүй явдал юм. Зүгээр л доорх кодуудын аль нэгийг аваад Excel дээрээ ажиллуулна уу (заавар энд байна).

    Макро 1. Сонгосон муж дахь хоосон мөрүүдийг устгах

    Энэ VBA код нь бүх хоосон зайг чимээгүйхэн устгана. Сонгосон муж дахь мөрүүдийг хэрэглэгчдэд ямар ч мессеж эсвэл харилцах цонх харуулахгүйгээр хийнэ.

    Өмнөх техникээс ялгаатай нь бүх мөр хоосон бол макро мөрийг устгадаг. Энэ нь мөр бүр дэх хоосон бус нүднүүдийн тоог авахын тулд ажлын хуудасны CountA функц дээр тулгуурладаг ба дараа нь тэг тоотой мөрүүдийг устгадаг.

    Public Sub DeleteBlankRows() Dim SourceRange As Range Dim EntireRow As Range Set SourceRange = Application. Сонголт хийхгүй бол (SourceRange юу ч биш) Дараа нь Application.ScreenUpdating = False For I = SourceRange.Rows.Count 1-р алхам -1 Set EntireRow = SourceRange.Cells(I, 1).EntireRow If Application.WorksheetFunction.CountA)(EntireRow). 0 Дараа нь EntireRow.Delete End If Next Application.ScreenUpdating = True End If End Sub

    Хэрэглэгчид макро ажиллуулсны дараа зорилтот мужийг сонгох боломж олгохын тулд дараах кодыг ашиглана уу:

    Нийтийн Sub RemoveBlankLines() Dim SourceRange-ыг муж болгон бүдэгрүүлнэ. Бүхэл мөрийг муж хүртэл бүдгэрүүлнэ Алдааг үргэлжлүүлнэ. Дараачийн тохируулга SourceRange = Application.InputBox( _)"Муж сонгоно уу:" , "Хоосон мөрүүдийг устгах" , _ Application.Selection.Address, Type :=8) Хэрэв тийм биш бол (SourceRange юу ч биш) Дараа нь Application.ScreenUpdating = False For I = SourceRange.Rows.Count 1 алхам - 1 Set EntireRow = SourceRange.Cells(I, 1).EntireRow If Application.WorksheetFunction.CountA(EntireRow) = 0 Дараа нь EntireRow.Delete End If Next Application.ScreenUpdating = True End If End Sub

    Ажиллуулах үед макро харагдах болно. Дараах оруулах талбарт та зорилтот мужийг сонгоод OK товчийг дарна уу:

    Хоромхон зуур сонгосон муж дахь бүх хоосон мөрүүд арилж, үлдсэн мөрүүд дээш шилжинэ:

    Макро 2. Excel-ийн бүх хоосон мөрийг устгах

    идэвхтэй хуудас дээрх бүх хоосон мөр -ийг арилгахын тулд ашигласан мужын сүүлчийн мөрийг (жишээ нь: өгөгдөлтэй сүүлчийн нүд), дараа нь CountA нь тэгийг буцаадаг мөрүүдийг дээшээ устгана:

    Дэд DeleteAllEmptyRows() LastRowIndex-ийг бүхэл тоогоор бүдгэрүүлнэ. eSheet.UsedRange LastRowIndex = UsedRng.Row - 1 + UsedRng.Rows.Count Application.ScreenUpdating = False For RowIndex = LastRowIndex 1-р алхам -1 Хэрэв Application.CountA(Мөр(RowIndex)) = 0 Дараа нь Мөр(DeleIndex). Хэрэв Next RowIndex Application.ScreenUpdating = True End Sub

    Макро 3. Хэрэв нүд хоосон байвал мөрийг устгана уу

    Энэ макроны тусламжтайгаар та заасан нүдэн дэх нүдийг бүхэлд нь устгах боломжтой.багана хоосон байна.

    Дараах код нь А баганад хоосон байгаа эсэхийг шалгана. Өөр баганад тулгуурласан мөрүүдийг устгахын тулд "A"-г тохирох үсгээр солино уу.

    Дэд DeleteRowIfCellBlank() Алдаа дээр Дараагийн багануудыг үргэлжлүүлнэ( "A" ).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub

    As a Үнэндээ макро нь Тусгай руу очих > Хоосон зай функцийг ашигладаг бөгөөд та эдгээр алхмуудыг гараар хийснээр ижил үр дүнд хүрч чадна.

    Анхаарна уу. Макро нь бүх хуудасны хоосон мөрүүдийг устгадаг тул үүнийг ашиглахдаа маш болгоомжтой байгаарай. Урьдчилан сэргийлэх үүднээс энэ макро ажиллуулахын өмнө ажлын хуудсыг нөөцлөх нь ухаалаг хэрэг юм.

    Excel дээрх хоосон мөрүүдийг VBA-аар хэрхэн арилгах вэ

    Макро ашиглан Excel дээрх хоосон мөрүүдийг устгахын тулд та VBA кодыг өөрийн ажлын дэвтэрт оруулах эсвэл бидний жишээ ажлын номноос макро ажиллуулах боломжтой.

    Ажлын дэвтэртээ макро нэмнэ үү

    Ажил дэвтэртээ макро оруулахын тулд дараах алхмуудыг гүйцэтгэнэ үү:

    1. Хоосон мөрүүдийг устгахыг хүсэж буй ажлын хуудсыг нээнэ үү.
    2. Visual Basic Editor-ыг нээхийн тулд Alt + F11 товчийг дарна уу.
    3. Зүүн талд байгаа хулганы баруун товчийг дарна уу. ThisWorkbook , дараа нь Insert > Module дээр товшино уу.
    4. Код цонхонд кодыг буулгана уу.
    5. F5 товчийг дарна уу. макро ажиллуулахын тулд.

    Дэлгэрэнгүй алхам алхмаар зааварчилгааг Excel-д VBA хэрхэн оруулах, ашиглах талаар үзнэ үү.

    Манай жишээ ажлын номноос макро ажиллуулна уу

    Манай дээжийг татаж авна ууХоосон мөрүүдийг устгаж, тэндээс дараах макрогуудын аль нэгийг ажиллуулна:

    DeleteBlankRows - одоо сонгогдсон муж дахь хоосон мөрүүдийг устгана.

    RemoveBlankLines - хоосон мөрүүдийг устгаж, макро ажиллуулсны дараа сонгосон мужид шилжинэ.

    DeleteAllEmptyRows - идэвхтэй хуудас дээрх бүх хоосон мөрүүдийг устгана.

    DeleteRowIfCellBlank - тодорхой баганын нүд хоосон байвал мөрийг устгана.

    Excel дээрээ макро ажиллуулахын тулд дараах зүйлийг хийнэ үү:

    1. Татаж авсан ажлын ном болон асуусан бол макро идэвхжүүлнэ үү.
    2. Өөрийн ажлын номыг нээгээд сонирхсон ажлын хуудас руу очно уу.
    3. Ажлын хуудсан дээрээ Alt + F8 дарж, макро сонгоод <8 товшино уу>Ажиллуулах .

    Excel дээрх хоосон мөрүүдийг устгах томьёо

    Хэрэв та юу устгаж байгаагаа харахыг хүсвэл хоосон мөрүүдийг тодорхойлохын тулд дараах томъёог ашиглана уу:

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

    А2 нь эхний өгөгдлийн мөрийн хамгийн сүүлчийн нүд нь D2 байна.

    Энэ томьёог оруулна уу. a-г E2 эсвэл 2-р мөрөнд байгаа бусад хоосон багана, бөглөх бариулыг чирээд томьёог доош хуулна.

    Үүний үр дүнд та хоосон мөрүүдэд "Хоосон", мөрүүдэд "Хоосон биш" гэсэн тэмдэгтэй байх болно. ядаж нэг өгөгдөл агуулсан нүд:

    Томьёоны логик нь ойлгомжтой: та COUNTA функцээр хоосон бус нүднүүдийг тоолж, IF командыг ашиглан тэг тоог "Хоосон", өөрөөр хэлбэл "Хоосон биш" гэж буцаана. .

    ИнIF:

    =COUNTA(A2:D2)=0

    Энэ тохиолдолд томьёо нь хоосон мөрүүдэд ҮНЭН, хоосон биш мөрүүдэд ХУДАЛ гэсэн утгыг буцаана.

    томьёог суулгасан бол хоосон мөрүүдийг устгахын тулд дараах алхмуудыг хийгээрэй:

    1. Толгой мөрийн дурын нүдийг сонгоод Ангилах & > Шүүлтүүр -ийг Нүүр табын Форматууд -д оруулснаар бүх толгой нүднүүдэд шүүлтийн унждаг сумыг нэмнэ.
    2. Томъёоны баганын толгой хэсэгт байгаа сумыг товшоод (Бүгдийг сонгох) сонголтыг арилгаад Хоосон гэснийг сонгоод OK дээр дарна уу:
    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. Өгөгдөл таб > Авах & Transform групп болон From Table/Range дээр дарна уу. Энэ нь таны хүснэгтийг Power Query Editor-д ачаалах болно.
    3. Power Query Editor-ын Нүүр таб дээрээс Мөр устгах > Хоосон мөрүүдийг арилгах дээр товшино уу.
    4. Хаах & Load Энэ нь үр дүнгийн хүснэгтийг шинэ ажлын хуудсанд ачаалж, Query Editor-ыг хаах болно.

    Эдгээр залилангийн үр дүнд би дараах хүснэгтийг хоосон мөргүй авсан, гэхдээ хэд хэдэн таагүй өөрчлөлт хийснээр валютын формат алдагдаж, огноог үндсэн форматаар харуулсан болно. захиалгат нэгний оронд:

    Хэрэв мөрүүдийг устгахтодорхой баганын нүд хоосон байна

    Энэ зааварчилгааны эхэнд бид хоосон мөрүүдийг сонгох замаар хоосон мөрүүдийг арилгахгүй байхыг анхааруулсан. Гэсэн хэдий ч, хэрэв та тодорхой баганын хоосон зайд тулгуурласан мөрүүдийг устгахыг хүсвэл энэ арга хэрэг болно.

    Жишээ нь, А баганын нүд хоосон байгаа бүх мөрийг устгая. :

    1. Түлхүүр багана буюу манай тохиолдолд А баганыг сонгоно уу.
    2. Нүүр таб дээрээс Олох & > Тусгай руу очих -г сонгоно уу. Эсвэл F5 товчийг дараад Тусгай... товчийг дарна уу.
    3. Тусгай руу очих харилцах цонхноос Хоосон зай -г сонгоод OK дарна уу. Энэ нь А баганын ашигласан муж дахь хоосон нүднүүдийг сонгоно.
    4. Сонгосон нүдэн дээр хулганы баруун товчийг дараад контекст цэснээс Устгах... -г сонгоно.
    5. Устгах харилцах цонхноос Бүтэн мөр -г сонгоод OK дарна уу.

    Дууссан! А баганад утгагүй мөрүүд байхаа больсон:

    Түлхүүр баганын хоосон зайг шүүснээр ижил үр дүнд хүрч болно.

    Өгөгдлийн доорх нэмэлт мөрүүдийг хэрхэн арилгах вэ

    Заримдаа хоосон мэт харагдах мөрүүд нь зарим формат эсвэл хэвлэх боломжгүй тэмдэгтүүдийг агуулж болно. Өгөгдөл бүхий сүүлчийн нүд нь таны ажлын хуудасны хамгийн сүүлд ашигласан нүд мөн эсэхийг шалгахын тулд 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 дээр ур чадвараа дээшлүүлсэн. Майклын блог нь өөрийн мэдлэг, туршлагаа бусадтай хуваалцах, бүтээмж, үр ашгийг дээшлүүлэхэд хялбар зөвлөмж, зааварчилгаа өгөх зорилготой юм. Та туршлагатай мэргэжилтэн эсвэл анхлан суралцаж байгаа эсэхээс үл хамааран Майклын блог нь эдгээр чухал програм хангамжийн хэрэгслээс хамгийн их ашиг хүртэх талаар үнэ цэнэтэй ойлголт, практик зөвлөгөөг санал болгодог.