Salt la conținutul principal

Cum se concatenează celulele ignorați sau săriți spațiile goale în Excel?

Excel Înlănţui funcția vă poate ajuta să combinați rapid mai multe valori de celule într-o singură celulă, dacă există câteva celule goale în celulele selectate, această funcție va combina și golurile. Dar, cândva, doriți doar să concatenați celulele cu date și să omiteți celulele goale, cum ați putea să o terminați în Excel?

Concatenarea celulelor ignoră sau omite spațiile goale cu formula

Concatenarea celulelor ignoră sau omite golurile cu funcția definită de utilizator

Concatenarea celulelor ignoră sau omite golurile cu Kutools pentru Excel


Presupunând că am următoarele date despre celule care sunt populate cu unele celule goale, pentru a combina rândurile într-o singură celulă, puteți aplica o formulă pentru a o rezolva.

doc combinați săriți golurile 1

Vă rugăm să introduceți această formulă într-o celulă goală în care doriți să puneți rezultatul concatenat, =A1&IF(A2<>"","-"&A2,"")&IF(A3<>"","-"&A3,"")&IF(A4<>"","-"&A4,"")&IF(A5<>"","-"&A5,""), apoi trageți mânerul de umplere direct la celulele pe care doriți să le aplicați această formulă, iar valorile rândurilor au fost combinate fără celulele goale, după cum se arată în următoarea captură de ecran:

doc combinați săriți golurile 2

sfaturi: Dacă există mai multe rânduri care trebuie concatenate, ar trebui să utilizați funcția IF pentru a uni celulele, cum ar fi =A1&IF(A2<>"","-"&A2,"")&IF(A3<>"","-"&A3,"")&IF(A4<>"","-"&A4,"")&IF(A5<>"","-"&A5,"")&IF(A6<>"","-"&A6,""). „-" caracterul din formulă poate fi înlocuit cu orice alt delimitator de care aveți nevoie.


Concatenarea mai multor celule ignoră sau omite spațiile goale:

Kutools pentru Excel's Combina Rânduri, coloane sau celule fără a pierde date funcția vă poate ajuta să combinați sau să concatenați mai multe rânduri, coloane sau celule fără a pierde date, dar săriți sau ignorați celulele goale. Faceți clic pentru a descărca Kutools pentru Excel!

doc combinați săriți golurile 7

Kutools pentru Excel: cu mai mult de 300 de programe de completare Excel la îndemână, încercați fără limitări în 30 de zile. Descărcați și proba gratuită acum!


Dacă trebuie combinate mai multe celule, formula de mai sus va fi prea complexă pentru a fi executată, deci puteți utiliza următoarea funcție definită de utilizator pentru ao rezolva.

1. Țineți apăsat butonul Alt + F11 tastele în Excel și deschide fișierul Microsoft Visual Basic pentru aplicații fereastră.

2. Clic Insera > Moduleși lipiți următoarea macro în fișierul Module Fereastră.

Cod VBA: Concatenarea celulelor ignoră spațiile goale:

Function Concatenatecells(ConcatArea As Range) As String
'updateby Extendoffice
  For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & "/"): Next
  Concatenatecells = Left(nn, Len(nn) - 1)
End Function

3. Salvați și închideți această fereastră de cod, reveniți la foaia de lucru, apoi introduceți această formulă: = concatenatecells (A1: A5) într-o celulă goală și trageți mânerul de umplere direct la celule pentru a aplica această formulă și veți obține următorul rezultat:

doc combinați săriți golurile 3

sfaturi: În codul VBA de mai sus, puteți schimba „/”Caracter pentru orice alți delimitatori de care aveți nevoie.


Cu excepția formulei plictisitoare și a codului, aici, vă pot recomanda un instrument la îndemână-Kutools pentru Excel, cu puterea sa Combina utilitar, puteți concatena mai multe celule într-o singură celulă fără niciun efort.

Kutools pentru Excel : cu mai mult de 300 de programe de completare Excel la îndemână, gratuit pentru a încerca fără limitări în 30 de zile

După instalare Kutools pentru Excel, vă rugăm să faceți următoarele:

1. Selectați valoarea celulelor pe care doriți să o combinați.

2. Clic Kutools > Merge & SplitCombinați rânduri, coloane sau celule fără a pierde date, vezi captura de ecran:

3. În dialogul pop-out:

  • (1.) Alegeți tipul de celule pe care doriți să le combinați, puteți combina coloane, combina rânduri și combinați toate celulele într-o singură celulă;
  • (2.) Specificați un separator pentru conținutul concatenat;
  • (3.) Alegeți locația pentru a pune rezultatul, puteți pune rezultatul în celula superioară sau celula inferioară;
  • (4.) Specificați cum să vă ocupați de celulele combinate, puteți păstra sau șterge conținutul din aceste celule combinate și puteți, de asemenea, să îmbinați aceste celule combinate.

doc combinați săriți golurile 5

4. După terminarea setărilor, faceți clic pe Ok butonul, iar rândurile selectate au fost combinate într-o singură celulă separat și a sărit automat golurile, vedeți captura de ecran:

doc combinați săriți golurile 6

Descărcați și proba gratuită Kutools pentru Excel acum!


Kutools pentru Excel: cu mai mult de 300 de programe de completare Excel la îndemână, încercați fără limitări în 30 de zile. Descărcați și proba gratuită acum!

Cele mai bune instrumente de productivitate de birou

🤖 Kutools AI Aide: Revoluționați analiza datelor pe baza: Execuție inteligentă   |  Generați codul  |  Creați formule personalizate  |  Analizați datele și generați diagrame  |  Invocați funcțiile Kutools...
Caracteristici populare: Găsiți, evidențiați sau identificați duplicatele   |  Ștergeți rândurile goale   |  Combinați coloane sau celule fără a pierde date   |   Rundă fără Formula ...
Super căutare: VLookup cu mai multe criterii    VLookup cu valori multiple  |   VLookup pe mai multe foi   |   Căutare fuzzy ....
Listă derulantă avansată: Creați rapid o listă derulantă   |  Listă drop-down dependentă   |  Listă derulantă cu selectare multiplă ....
Manager de coloane: Adăugați un număr specific de coloane  |  Mutați coloanele  |  Comutați starea vizibilității coloanelor ascunse  |  Comparați intervale și coloane ...
Caracteristici prezentate: Focus pe grilă   |  Vedere de proiectare   |   Big Formula Bar    Manager registru de lucru și foi   |  Biblioteca de resurse (Text automat)   |  Data Picker   |  Combinați foi de lucru   |  Criptare/Decriptare celule    Trimiteți e-mailuri după listă   |  Super Filtru   |   Filtru special (filtrează bold/italic/barat...) ...
Top 15 seturi de instrumente12 Text Instrumente (Adăuga text, Eliminați caractere,...)   |   50+ Diagramă Tipuri de (Gantt Chart,...)   |   40+ Practic Formule (Calculați vârsta pe baza zilei de naștere,...)   |   19 inserare Instrumente (Introduceți codul QR, Inserați imaginea din cale,...)   |   12 Convertire Instrumente (Numere la cuvinte, conversie valutara,...)   |   7 Merge & Split Instrumente (Rânduri combinate avansate, Celule divizate,...)   |   ... și altele

Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp.  Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...

Descriere


Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
Comments (14)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How would you change the "/" sign for CHAR(10) or line break?
This comment was minimized by the moderator on the site
Hello, Alan,To combine the cells with the line break, you can apply the below simple formula:=TEXTJOIN(CHAR(10),TRUE,A1:A5)
After getting the results with this formula, you should click the Wrap Text to get the correct results you need.
Please try, thank you!
This comment was minimized by the moderator on the site
super, thank Q
This comment was minimized by the moderator on the site
I had issues with the formula provided causing leading delimiters, so I did this instead and it works well. This is concatenating cells horizontally while ignoring blank cells and results in no extra commas.

=IF(A2="", "", A2)&IF(A2="", "", ", ")&IF(B2="", "", B2)&IF(B2="", "", ", ")&IF(C2="", "", C2)
This comment was minimized by the moderator on the site
This worked a treat, thanks so much
This comment was minimized by the moderator on the site
Hi, used the macro and changed the "/" to a comma "," but got a lot of commas and it appeared to add all the blank cells.
I am doing a nested if statement to determine the appropriate sorting in the database. Is this enough to make the blank cell 'active' so that the macro sees this and adds it to the text string? How to work around that?
thanks much
This comment was minimized by the moderator on the site
Hello, Melinda,
the above vba code works well in my worksheet, you just need to change the separator / to comma as below:

Function Concatenatecells(ConcatArea As Range) As String
'updateby Extendoffice 20151103
For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & ","): Next
Concatenatecells = Left(nn, Len(nn) - 1)
End Function

and then apply this formula:=concatenatecells(A1:A5)
This comment was minimized by the moderator on the site
thanks!
I found my problem was in the logic statement that I used to select data for these cells that I was trying to text string. I used a " " instead of "" for the false statement. That was picked up by the macro and used as a space bar and came out , , , , , text, , , ,
So I went back and took out the space and just have the "" and then the macro worked great.
Of course I am learning macros so that's another adventure.
thanks much!!
This comment was minimized by the moderator on the site
Thank you, it was very helpful!
This comment was minimized by the moderator on the site
Please help, i dont always have a value in my first column, that couses that I end up with a seperator infort of the final result. Is there a way around this?
This comment was minimized by the moderator on the site
ever get tis figured out? same boat.
This comment was minimized by the moderator on the site
I don't know how to do it all in one cell, but I added a row with this formula: =IF(LEFT(U20,1)=",",RIGHT(U20,LEN(U20)-2),U20).
My separator was a comma and a space ", " so I used -2 for LEN. U20 is the cell with the concatenated &if formula. The logic of this formula is that if the first character from the left equals a comma, then delete the first two characters; otherwise leave it alone.

Hope this helps.
This comment was minimized by the moderator on the site
Thank you! This saved hours of frustration on my part! Works as a charm!
This comment was minimized by the moderator on the site
The VBA script is wrong, because the output of the formula puts a huge space between the delimiters.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations