Отстранување празни ќелии од опсег

Формулирање на проблемот

Имаме опсег на ќелии со податоци што содржат празни ќелии:

 

Задачата е да се отстранат празните ќелии, оставајќи ги само ќелиите со информации.

Метод 1. Груб и брз

  1. Избор на оригиналниот опсег
  2. Притиснете го копчето F5, копче следно Истакнете (Специјално). Во прозорецот што се отвора, изберете Празни ќелии(Ќорци) и кликнете на OK.

    Отстранување празни ќелии од опсег

    Сите празни ќелии во опсегот се избрани.

  3. Даваме команда во менито за бришење на избраните ќелии: кликнете со десното копче- Избришете ќелии (Избриши ќелии) со поместување нагоре.

Метод 2: Формула на низа

За поедноставување, ајде да ги именуваме нашите работни опсези со користење Менаџер за имиња (Име менаџер) табот формула (Формули) или, во Excel 2003 и постари, менито Вметни – Име – Додели (Вметни - Име - Дефинирај)

 

Именувајте го опсегот B3:B10 Имај празно, опсег D3:D10 – НикојПразно. Опсегот мора да биде строго со иста големина и може да се наоѓа каде било релативно едни на други.

Сега изберете ја првата ќелија од вториот опсег (D3) и внесете ја оваа застрашувачка формула во неа:

=IF(ROW() -ROW(НеПразно)+1>NOTROWS(Да празно)-COUNTПРАЗНО(Да празно);“”;INDIRECT(ADDRESS(LOWEST((IF(Empty<>“”,ROW(Празно);ROW() + ROWS(Има празни))); LINE()-ROW(Не е празно)+1); КОЛУМНА(Има празни); 4)))

Во англиската верзија ќе биде:

=IF(ROW()-ROW(NoEmpty)+1>ROWS(Празно)-COUNTBLANK(Празно),””,INDIRECT(ADDRESS(SMALL((IF(Empty<>“”,ROW(Празно),ROW() +ROWS(Има празно))),ROW()-ROW(Без празно)+1),COLUMN(Има празно),4)))

Покрај тоа, мора да се внесе како формула за низа, т.е. притиснете по лепење Внесете (како и обично) и Ctrl + Shift + Enter. Сега формулата може да се копира со автоматско комплетирање (повлечете го црниот крст во долниот десен агол на ќелијата) - и ќе го добиеме оригиналниот опсег, но без празни ќелии:

 

Метод 3. Прилагодена функција во VBA

Ако постои сомневање дека често ќе треба да ја повторувате постапката за отстранување празни ќелии од опсезите, тогаш подобро е еднаш да додадете своја функција за отстранување празни ќелии во стандардниот сет и да ја користите во сите наредни случаи.

За да го направите ова, отворете го уредувачот на Visual Basic (ALT + F11), вметнете нов празен модул (мени Вметни – Модул) и копирајте го текстот на оваа функција таму:

Функција NoBlanks(DataRange As Range) As Variant() Dim N додека Long Dim N2 As Long Dim Rng as Range Dim MaxCells As Long Dim Result() Како варијанта Dim R Колку долго Dim C Колку долго MaxCells = Application.Работен листФункција.Max( _ Application.Caller.Cells.Count, DataRange.Cells.Count) ReDim Result(1 до MaxCells, 1 до 1) За секој Rng во DataRange.Cells Ако Rng.Value <> vbNullString Потоа N = N + 1 Резултат(N, 1 ) = Rng.Value End If Next Rng За N2 = N + 1 To MaxCells Result(N2, 1) = vbNullString Next N2 If Application.Caller.Rows.Count = 1 Потоа NoBlanks = Application.Transpose(резултат) Друго NoBlanks = Резултат Функција End If End  

Не заборавајте да ја зачувате датотеката и да се вратите од Visual Basic Editor на Excel. За да ја користите оваа функција во нашиот пример:

  1. Изберете доволен опсег на празни ќелии, на пример F3:F10.
  2. Одете во менито Вметни – Функција (Вметни - Функција)или кликнете на копчето Вметнете функција (Вметни функција) табот формула (Формули) во поновите верзии на Excel. Во категоријата Дефинирано од корисник (Кориснички дефинирано) изберете ја нашата функција NoBlanks.
  3. Наведете го опсегот на изворот со празнини (B3:B10) како аргумент на функцијата и притиснете Ctrl + Shift + Enterза да ја внесете функцијата како формула за низа.

:

  • Бришење на сите празни редови во табела одеднаш со едноставно макро
  • Отстранување на сите празни редови во работниот лист одеднаш со помош на додатокот PLEX
  • Брзо пополнете ги сите празни ќелии
  • Што се макроа, каде да вметнете макро код во VBA

 

Оставете Одговор