содржина
Формулирање на проблемот
Имаме опсег на ќелии со податоци што содржат празни ќелии:
Задачата е да се отстранат празните ќелии, оставајќи ги само ќелиите со информации.
Метод 1. Груб и брз
- Избор на оригиналниот опсег
- Притиснете го копчето F5, копче следно Истакнете (Специјално). Во прозорецот што се отвора, изберете Празни ќелии(Ќорци) и кликнете на OK.
Сите празни ќелии во опсегот се избрани.
- Даваме команда во менито за бришење на избраните ќелии: кликнете со десното копче- Избришете ќелии (Избриши ќелии) со поместување нагоре.
Метод 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. За да ја користите оваа функција во нашиот пример:
- Изберете доволен опсег на празни ќелии, на пример F3:F10.
- Одете во менито Вметни – Функција (Вметни - Функција)или кликнете на копчето Вметнете функција (Вметни функција) табот формула (Формули) во поновите верзии на Excel. Во категоријата Дефинирано од корисник (Кориснички дефинирано) изберете ја нашата функција NoBlanks.
- Наведете го опсегот на изворот со празнини (B3:B10) како аргумент на функцијата и притиснете Ctrl + Shift + Enterза да ја внесете функцијата како формула за низа.
:
- Бришење на сите празни редови во табела одеднаш со едноставно макро
- Отстранување на сите празни редови во работниот лист одеднаш со помош на додатокот PLEX
- Брзо пополнете ги сите празни ќелии
- Што се макроа, каде да вметнете макро код во VBA