Gå til hovedindhold

Hvordan kopieres og indsættes kun ikke-tomme celler i Excel?

De fleste af os kan lide under dette problem, når vi kopierer en liste med data, der indeholder nogle tomme celler, og derefter indsætter dem i en anden kolonne, bliver de tomme celler også indsat. Dette er meget irriterende, når vi ikke har brug for emnerne og kun ønsker at indsætte celler, der ikke er tomme. I dette tilfælde, hvordan kunne vi kun kopiere og indsætte ikke-tomme celler i Excel hurtigt og bekvemt? Her er nogle hurtige tricks, som du kan løse det:

Kopier og indsæt kun ikke-tomme celler med kommandoen Gå til speciel

Kopier og indsæt kun ikke-tomme celler med filterfunktionen

Kopier og indsæt kun ikke-tomme celler med Array Formula

Kopier og indsæt kun ikke-tomme celler med VBA-kode

Kopier og indsæt kun ikke-tomme celler med Kutools til Excel god idé3


pil blå højre boble Kopier og indsæt kun ikke-tomme celler med kommandoen Gå til speciel

Med Gå til Special kommando, kan du først vælge alle data og derefter kopiere og indsætte dem til en anden placering.

1. Vælg din liste over data, som du vil bruge.

doc-copy-only-nonblanks1

2. Klik derefter på Home > Find og vælg > Gå til Special, se skærmbillede:

doc-copy-only-nonblanks1

3. I Gå til Special dialogboks, tjek Konstanter mulighed, se skærmbillede:

doc-copy-only-nonblanks1

4. Klik derefter på OK, og kun værdiecellerne er valgt på listen.

doc-copy-only-nonblanks1

5. Og kopier og indsæt derefter dataene til den ønskede placering. Og kun de ikke-tomme celleværdier er indsat. Se skærmbillede:

doc-copy-only-nonblanks1

Bemærk: Denne metode er kun tilgængelig for konstanterne, den anvendes ikke på formelcellerne.


pil blå højre boble Kopier og indsæt kun ikke-tomme celler med filterfunktionen

filtre funktionen kan hjælpe dig med at filtrere de ikke-tomme celler først, og derefter kan du kopiere og indsætte dem i andre celler, som du har brug for.

2. Klik data > filtre, se skærmbillede:

dok kopi kun nonblanks6

3. Klik derefter på rullemenuen i højre hjørne af cellen på den valgte liste, og fjern markeringen af Blanks under rullemenuen. Se skærmbillede:
doc-copy-only-nonblanks1

4. Og klik derefter på OK, alle de ikke-tomme celler er blevet filtreret ud som følgende skærmbillede vist:

doc-copy-only-nonblanks1

5. Endelig kan du kopiere de filtrerede data og indsætte dem til ethvert sted, du har brug for.

Bemærk: Både værdier og formler træder i kraft ved at bruge denne måde.


Vælg celler uden blanke på én gang

Klik for gratis prøveversion med alle funktioner om 30 dage!
doc kutools vælger ikke tomme celler

pil blå højre boble Kopier og indsæt kun ikke-tomme celler med Array Formula

For at kopiere og indsætte kun de ikke-tomme celler kan du også anvende følgende matrixformel.

1. Ud over dine data skal du indtaste følgende formel i en tom celle:

=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

Bemærk: I ovenstående formel A1: A15 er den dataliste, du vil bruge. Du kan ændre den til dit behov.

2. Tryk derefter på Skift + Ctrl + Enter nøgler sammen, og vælg derefter celle B1, og træk udfyldningshåndtaget over til det område, du vil indeholde denne formel, og alle de ikke-tomme celleværdier er blevet ekstraheret. Se skærmbillede:

doc-copy-only-nonblanks1

3. Da de er formler, skal du kopiere og indsætte dem som værdier, når du kopierer dem til et andet sted.

Bemærk: Denne formel er kun tilgængelig for konstanterne, ikke anvendt på formelcellerne.


pil blå højre boble Kopier og indsæt kun ikke-tomme celler med VBA-kode

Hvis du er interesseret i VBA-kode, kan du udføre følgende kode for at afslutte denne opgave.

1. Hold nede ALT + F11 tasterne, og det åbner Vinduet Microsoft Visual Basic til applikationer.

2. Klik indsatte > Moduler, og indsæt følgende kode i Modul vindue.

VBA-kode: Kopier og indsæt kun celler, der ikke er tomme, i 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. Tryk derefter på F5 nøgle til at køre denne kode, vises et promptfelt, der minder dig om at vælge det dataområde, du vil bruge. Se skærmbillede:

doc-copy-only-nonblanks1

4. Og klik derefter på OK, vises en anden promptboks, så du kan vælge en celle, der skal placeres i dataene.

doc-copy-only-nonblanks1

5. Klik OK for at afslutte denne kode, og kun de ikke-tomme celleværdier er indsat i din angivne position.

Bemærk: Denne kode er kun tilgængelig for konstanterne.


pil blå højre boble Kopier og indsæt kun ikke-tomme celler med Kutools til Excel

Er der nogen meget nemmere måde end ovenfor? Selvfølgelig, Kutools til Excel's Vælg Ikke-blank celles hjælpeprogram kan hjælpe dig med at vælge de ikke-blanke celler først og derefter kopiere og indsætte dem.

Kutools til Excel, med mere end 300 praktiske funktioner, der gør dine job lettere. 

Efter gratis installation Kutools til Excel, gør venligst som nedenfor:

1. Vælg celleområdet, og klik på Kutools > Type > Vælg Ikke-tomme celler. Se skærmbillede:
doc vælg ikke-blank celle 2

2. Derefter vælges de ikke-tomme celler, tryk på Ctrl + C for at kopiere dem, gå derefter til at vælge en celle, hvor du vil sende det valgte resultat, tryk på Ctrl + V for at indsætte valgte ikke-tomme celler. Se skærmbillede:
doc vælg ikke-blank celle 3

pil blå højre boble Kopier og indsæt kun ikke-tom celle

Kutools til Excel: 300+ funktioner, du skal have i Excel, 30-dages gratis prøveperiode herfra

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
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