Прескочи на основното съдържание

Как да копирате и поставите само непразни клетки в Excel?

Автор: Xiaoyang Последна промяна: 2020-04-28

Повечето от нас може да страдат от този проблем, когато копираме списък с данни, който съдържа някои празни клетки, и след това ги поставим в друга колона, празните клетки също ще бъдат поставени. Това е много досадно, когато не се нуждаем от празни места и искаме да поставим само непразни клетки. В този случай как бихме могли да копираме и поставим само непразни клетки в Excel бързо и удобно? Ето няколко бързи трика, за да го разрешите:

Копирайте и поставете само непразни клетки с командата Go To Special

Копирайте и поставете само непразни клетки с функцията за филтриране

Копирайте и поставете само непразни клетки с формула за масив

Копирайте и поставете само непразни клетки с VBA код

Копирайте и поставете само непразни клетки с Kutools за Excel добра идея3


стрелка син десен балон Копирайте и поставете само непразни клетки с командата Go To Special

С Отидете на Special можете първо да изберете всички данни и след това да ги копирате и поставите на друго място.

1. Изберете своя списък с данни, които искате да използвате.

doc-copy-only-nonblanks1

2, След това кликнете Начало > Търсене и избор > Отидете на Special, вижте екранна снимка:

doc-copy-only-nonblanks1

3. В Отидете на Special диалогов прозорец, проверете константи опция, вижте екранна снимка:

doc-copy-only-nonblanks1

4, След това кликнете OKи в списъка са избрани само клетките със стойности.

doc-copy-only-nonblanks1

5. След това копирайте и поставете данните на желаното от вас място. И само стойностите на непразните клетки са поставени. Вижте екранна снимка:

doc-copy-only-nonblanks1

Забележка: Този метод е достъпен само за константите, не се прилага към клетките с формули.


стрелка син десен балон Копирайте и поставете само непразни клетки с функцията за филтриране

- филтър може да ви помогне първо да филтрирате непразните клетки и след това можете да ги копирате и поставите в други клетки, както ви е необходимо.

2. Щракнете Дата > филтър, вижте екранна снимка:

doc копие само непразни6

3. След това щракнете върху падащия бутон в десния ъгъл на клетката в избрания списък и премахнете отметката от Заготовки опция под падащото меню. Вижте екранна снимка:
doc-copy-only-nonblanks1

4, И после щракнете върху OK, всички непразни клетки са филтрирани, както е показано на следната екранна снимка:

doc-copy-only-nonblanks1

5. Най-накрая можете да копирате филтрираните данни и да ги поставите на всяко място, от което се нуждаете.

Забележка: И стойностите, и формулите влизат в сила при използване на този начин.


Изберете непразни клетки наведнъж

Кликнете за безплатен пълнофункционален пробен период след 30 дни!
doc kutools изберете непразни клетки

стрелка син десен балон Копирайте и поставете само непразни клетки с формула за масив

За да копирате и поставите само непразните клетки, можете също да приложите следната формула за масив.

1. Освен вашите данни, въведете следната формула в празна клетка:

=LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX(A:A,SMALL(IF($A$1:$A$15<>"",ROW($A$1:$A$15)),ROWS($B$1:B1)))))

doc-copy-only-nonblanks1

Забележка: В горната формула, A1: A15 е списъкът с данни, който искате да използвате. Можете да го промените според вашите нужди.

2. След това натиснете Shift + Ctrl + Enter клавиши заедно и след това изберете клетка B1 и плъзнете манипулатора за запълване до диапазона, който искате да съдържа тази формула, и всички непразни стойности на клетките са извлечени. Вижте екранна снимка:

doc-copy-only-nonblanks1

3. Тъй като те са формули, когато ги копирате на друго място, трябва да ги копирате и поставите като стойности.

Забележка: Тази формула е достъпна само за константите, не се прилага към клетките с формула.


стрелка син десен балон Копирайте и поставете само непразни клетки с VBA код

Ако се интересувате от VBA код, можете да изпълните следния код, за да завършите тази задача.

1. Задръжте натиснат ALT + F11 ключове и отваря Прозорец на Microsoft Visual Basic за приложения.

2. Щракнете Поставете > Модулии поставете следния код в Прозорец на модула.

VBA код: Копирайте и поставете само непразни клетки в Excel

Sub PasteNotBlanks()
'Update 20140325
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
If InputRng.Columns.Count > 1 Then
    MsgBox "Please select one column."
    Exit Sub
End If
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
InputRng.SpecialCells(xlCellTypeConstants).Copy Destination:=OutRng.Range("A1")
End Sub

3. След това натиснете F5 за да стартирате този код, ще се появи поле за подкана, за да ви напомни да изберете диапазона от данни, който искате да използвате. Вижте екранна снимка:

doc-copy-only-nonblanks1

4, И после щракнете върху OK, ще изскочи друго поле за подкана, за да ви позволи да изберете клетка, в която да поставите данните.

doc-copy-only-nonblanks1

5. Кликнете OK за да завършите този код и само стойностите на непразните клетки са поставени в указаната от вас позиция.

Забележка: Този код е достъпен само за константите.


стрелка син десен балон Копирайте и поставете само непразни клетки с Kutools за Excel

Има ли някакъв много по-лесен начин от горния? Разбира се, Kutools за Excel's Изберете Непразна клеткаПомощната програма може да ви помогне първо да изберете непразните клетки и след това да ги копирате и поставите.

Kutools за Excel, с повече от 300 удобни функции, прави работата ви по-лесна. 

След безплатно инсталиране Kutools за Excel, моля, направете следното:

1. Изберете диапазона от клетки и щракнете Kutools > Изберете > Изберете Непразни клетки. Вижте екранна снимка:
doc изберете непразна клетка 2

2. След това се избират непразните клетки, натиснете Ctrl + C за да ги копирате, след това отидете, за да изберете клетка, където искате да изведете поставения резултат, натиснете Ctrl + V за поставяне на избрани непразни клетки. Вижте екранна снимка:
doc изберете непразна клетка 3

стрелка син десен балон Копирайте и поставете само непразни клетки

Kutools за Excel: 300+ функции, които трябва да имате в Excel, 30-дневен безплатен пробен период от тук

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
=Filter(A:A,A:A<>"")
This comment was minimized by the moderator on the site
Array formula Works fine on text
but don't work on numbers.
This comment was minimized by the moderator on the site
Not working on Numbers !!!
Works fine on text !!!
Please guide
This comment was minimized by the moderator on the site
Thanks for the great tips! I am using the Find & Select feature, but it's taking a long time because my spreadsheet contains 70 columns and 450k rows. Is there a way to fasten the process?
This comment was minimized by the moderator on the site
When i select and copy only non-blank cells, how can i then paste it somewhere else with keeping the same empty ranges between them?
This comment was minimized by the moderator on the site
These tools delete the blank cells and compress the row. I want the format to be retained, including the spaces, but I do not want empty cells to overwrite cells containing existing data. i.e. I want to add the new, copied, cells in a column onto an existing column.
This comment was minimized by the moderator on the site
Hi #abc I have used your formula =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX('List of Overdue items'!A:A,SMAL L(IF('List of Overdue items'!A$1:A$15 00"",ROW('List of Overdue items'!A$1:A$15 00)),ROWS('List of Overdue items'!B$1:B2)) ))) I have data in one Worksheet and want to copy that data into another worksheet (same doc). Can you help?
This comment was minimized by the moderator on the site
Is there a way to make the macro work when referencing between different sheets?
This comment was minimized by the moderator on the site
This formula is absolutely amazing, thank you. Unfortunately it breaks when trying to copy from another sheet, is there a workaround?
This comment was minimized by the moderator on the site
correct the references when using the formula between different sheets. It does work. =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX('List of Overdue items'!A:A,SMALL(IF('List of Overdue items'!A$1:A$1500"",ROW('List of Overdue items'!A$1:A$1500)),ROWS('List of Overdue items'!B$1:B2)))))
This comment was minimized by the moderator on the site
thanks for the super formula: =LOOKUP("zzzzz",CHOOSE({1,2},"",INDEX(A:A,SMALL(IF($A$1:$A$15"",ROW($A$1:$A$15)),ROWS($B$1:B1)))))
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations