Przejdź do głównej zawartości

Jak połączyć komórki ignorować lub pomijać puste miejsca w programie Excel?

Excela Powiązać funkcja może pomóc w szybkim połączeniu wielu wartości komórek w jedną komórkę, jeśli w wybranych komórkach znajdują się puste komórki, ta funkcja połączy również puste miejsca. Ale czasami po prostu chcesz połączyć komórki z danymi i pominąć puste komórki, jak możesz to zakończyć w programie Excel?

Połączone komórki ignorują lub pomijają puste miejsca za pomocą formuły

Połączone komórki ignorują lub pomijają puste miejsca dzięki funkcji zdefiniowanej przez użytkownika

Połączone komórki ignorują lub pomijają puste miejsca za pomocą Kutools for Excel


Przypuśćmy, że mam następujące dane komórek, które zostały wypełnione pustymi komórkami, aby połączyć wiersze w jedną komórkę, możesz zastosować formułę, aby ją rozwiązać.

doc połącz pomiń puste miejsca 1

Wprowadź tę formułę w pustą komórkę, w której chcesz umieścić połączony wynik, =A1&IF(A2<>"","-"&A2,"")&IF(A3<>"","-"&A3,"")&IF(A4<>"","-"&A4,"")&IF(A5<>"","-"&A5,""), a następnie przeciągnij uchwyt wypełniania w prawo do komórek, do których chcesz zastosować tę formułę, a wartości wierszy zostały połączone bez pustych komórek, jak pokazano na poniższym zrzucie ekranu:

doc połącz pomiń puste miejsca 2

Tips: Jeśli istnieje potrzeba konkatenacji większej liczby wierszy, do łączenia komórek należy użyć funkcji JEŻELI, na przykład =A1&IF(A2<>"","-"&A2,"")&IF(A3<>"","-"&A3,"")&IF(A4<>"","-"&A4,"")&IF(A5<>"","-"&A5,"")&IF(A6<>"","-"&A6,""). "-" Znak we wzorze można zastąpić dowolnymi innymi potrzebnymi ogranicznikami.


Łączenie wielu komórek ignoruj ​​lub pomijaj puste miejsca:

Kutools dla programu Excel's Połączyć Wiersze, kolumny lub komórki bez utraty danych Funkcja może pomóc w łączeniu lub konkatenacji wielu wierszy, kolumn lub komórek bez utraty danych, ale pomijanie lub ignorowanie pustych komórek. Kliknij, aby pobrać Kutools dla programu Excel!

doc połącz pomiń puste miejsca 7

Kutools dla programu Excel: z ponad 300 poręcznymi dodatkami do programu Excel, które można wypróbować bez ograniczeń w ciągu 30 dni. Pobierz i bezpłatną wersję próbną teraz!


Jeśli istnieje potrzeba połączenia wielu komórek, powyższa formuła będzie zbyt złożona do wykonania, więc możesz użyć następującej funkcji zdefiniowanej przez użytkownika, aby ją rozwiązać.

1. Przytrzymaj Alt + F11 klucze w programie Excel i otwiera plik Microsoft Visual Basic for Applications okno.

2. Kliknij wstawka > Modułi wklej następujące makro w Moduł Okno.

Kod VBA: połączone komórki ignorują puste miejsca:

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. Zapisz i zamknij to okno kodu, wróć do arkusza, a następnie wprowadź tę formułę: = komórki konkatenatu (A1: A5) do pustej komórki i przeciągnij uchwyt wypełniania w prawo do komórek, aby zastosować tę formułę, a otrzymasz następujący wynik:

doc połącz pomiń puste miejsca 3

Tips: W powyższym kodzie VBA możesz zmienić „/”Do innych potrzebnych separatorów.


Oprócz nudnej formuły i kodu, tutaj mogę polecić poręczne narzędzie-Kutools dla programu Excelze swoim potężnym Połączyć narzędzie, można bez wysiłku połączyć wiele komórek w jedną komórkę.

Kutools dla programu Excel : z ponad 300 poręcznymi dodatkami Excela, które można wypróbować bez ograniczeń w ciągu 30 dni

Po zainstalowaniu Kutools dla programu Excelwykonaj następujące czynności:

1. Wybierz wartość komórek, które chcesz połączyć.

2. Kliknij Kutools > Połącz i podzielPołącz wiersze, kolumny lub komórki bez utraty danychzobacz zrzut ekranu:

3. W wyskakującym oknie dialogowym:

  • (1.) Wybierz typ komórek, które chcesz połączyć, możesz łączyć kolumny, łączyć wiersze i łączyć wszystkie komórki w pojedynczą komórkę;
  • (2.) Określ separator dla połączonej zawartości;
  • (3.) Wybierz lokalizację, w której chcesz umieścić wynik, możesz umieścić wynik w górnej lub dolnej komórce;
  • (4.) Określ, jak postępować z połączonymi komórkami, możesz zachować lub usunąć zawartość z tych połączonych komórek, a także możesz scalić te połączone komórki.

doc połącz pomiń puste miejsca 5

4. Po zakończeniu ustawień kliknij Ok przycisk, a wybrane wiersze zostały połączone w jedną komórkę osobno i automatycznie pominęły puste miejsca, patrz zrzut ekranu:

doc połącz pomiń puste miejsca 6

Pobierz i bezpłatną wersję próbną Kutools dla programu Excel teraz!


Kutools dla programu Excel: z ponad 300 poręcznymi dodatkami do programu Excel, które można wypróbować bez ograniczeń w ciągu 30 dni. Pobierz i bezpłatną wersję próbną teraz!

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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