Ugrás a tartalomra

Hogyan lehet összefűzni a cellaértékeket, amíg üres cellát nem talál az oszlopban?

doc összefűz, amíg 1 üres nem lesz

Például van egy listám azokról az értékekről, amelyek tartalmaznak néhány üres cellát, és most össze akarom összefűzni az összes üres adatsort az üres helyek között egy cellává, és az egyesített értékeket egy másik oszlopban felsorolni, az alábbi képernyőkép szerint. Hogyan tudnám összefűzni a sejteket, amíg egy üres cellát nem találok egy oszlopban?

Összekapcsolja a cellaértékeket, amíg az üres cellát nem talál a VBA kóddal ellátott oszlopban

Összefűzze a cellaértékeket, amíg az if egy üres cellát nem talál egy oszlopban a Kutools for Excel alkalmazással


nyíl kék jobb buborék Összekapcsolja a cellaértékeket, amíg az üres cellát nem talál a VBA kóddal ellátott oszlopban

Nincs közvetlen módja annak, hogy egyesítsen egy cellakészletet az üres helyek között, de a következő VBA-kódot alkalmazhatja annak kezelésére. Kérjük, tegye a következőket:

1. Tartsa lenyomva a ALT + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.

2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablak.

VBA kód: összefűzi a cellaértékeket, amíg üres cellát nem talál

Sub Concatenatecells()
'updateby Extendoffice
    Dim xRg As Range
    Dim xSaveToRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xTStr As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please selecte the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Then
        MsgBox "the selected range is more than one column", vbInformation, "Kutools for Ecel"
        Exit Sub
    End If
    Set xSaveToRg = Application.InputBox("Please selecte output cell:", "Kutools for Excel", , , , , , 8)
    If xSaveToRg Is Nothing Then Exit Sub
    Set xSaveToRg = xSaveToRg.Cells(1)
    Application.ScreenUpdating = False
    For Each xCell In xRg
        If xCell <> "" Then
            xTStr = xTStr & xCell & " "
        Else
            xSaveToRg.Value = xTStr
            Set xSaveToRg = xSaveToRg.Offset(1)
            xTStr = ""
        End If
    Next
    If xTStr <> "" Then xSaveToRg.Value = Left(xTStr, Len(xTStr) - 1)
    Application.ScreenUpdating = True
End Sub

3. Ezután nyomja meg a gombot F5 kulcs a kód futtatásához, és megjelenik egy felszólító mező, amely emlékeztet arra, hogy válassza ki az összefűzni kívánt adattartományt, lásd a képernyőképet:

doc összefűz, amíg 10 üres nem lesz

4. Ezután kattintson OK, és egy újabb prompt doboz jelenik meg, kérjük, válasszon egy cellát a összefűzött eredmény megjelenítéséhez, lásd a képernyőképet:

doc összefűz, amíg 11 üres nem lesz

5. Kattintson a gombra OK gombra, és az oszloplista adatai összefűznek az üres helyek között, lásd a képernyőképet:

doc összefűz, amíg 1 üres nem lesz


nyíl kék jobb buborék Összefűzze a cellaértékeket, amíg az if egy üres cellát nem talál egy oszlopban a Kutools for Excel alkalmazással

Ha van Kutools az Excel számára, ötvözve annak Átalakítási tartomány és a Kombájn funkciókat, ezt a munkát a lehető leghamarabb befejezheti. A Átalakítási tartomány segédprogram segítségével konvertálhat egy oszlopot tartományra, és a Kombájn funkció segíthet az átalakított tartomány oszlopra összefűzésében.

Kutools az Excel számára : több mint 300 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. 

Telepítése után Kutools az Excel számára, kérjük, tegye a következőket:

1. Jelölje ki a összefűzni kívánt cellákat, majd kattintson a gombra Kutools > Választék > Átalakítási tartomány, lásd a képernyőképet:

2. Az Átalakítási tartomány párbeszédpanelen ellenőrizze Egyetlen oszlop a tartományhoz lehetőség a Átalakítás típusa, Majd válassza ki Üres cella határolja a rekordokat alatt a Sorok rekordonként, lásd a képernyőképet:

doc összefűz, amíg 3 üres nem lesz

3. Ezután kattintson Ok, és megjelenik egy felszólító mező, amely emlékezteti Önt, hogy válasszon egy cellát az eredmény kimenetéhez, lásd a képernyőképet:

doc összefűz, amíg 4 üres nem lesz

4. Kattints OK, és az egyetlen oszlop adatait az üres cella több sorra és oszlopra konvertálta, lásd a képernyőképet:

doc összefűz, amíg 5 üres nem lesz

5. Az átalakított adatok több oszlopban vannak, ezért azokat egy oszlopba kell egyesítenie, válassza ki az adattartományt, majd kattintson Kutools > Egyesítés és felosztás > Kombinálja a sorokat, oszlopokat vagy cellákat adatok elvesztése nélkül, lásd a képernyőképet:

6. Az Kombinálja az oszlopokat vagy a sorokat párbeszédpanelen tegye a következőket:

(1.) Válassza ki Oszlopok egyesítése lehetőség a A kijelölt cellák egyesítése a következő lehetőségek szerint;

(2.) Ezután adjon meg egy elválasztót, amely el akarja különíteni a összefűzött értékeket;

(3.) Válassza ki, hogyan kívánja kezelni a kombinált cellákat. Megtarthatja vagy törölheti az eredeti adatokat, és egyesítheti az egyesített cellákat is. Lásd a képernyőképet:

doc összefűz, amíg 7 üres nem lesz

7. A beállítások elvégzése után kattintson a gombra Ok or alkalmaz gombra, a cellákat egy oszlopba összefűztük egy adott elválasztóval, lásd a képernyőképet:

doc összefűz, amíg 8 üres nem lesz

Töltse le és ingyenes próbaverziója a Kutools for Excel programhoz most!

A legjobb irodai hatékonyságnövelő eszközök

Népszerű szolgáltatások: Ismétlődések keresése, kiemelése vagy azonosítása   |  Üres sorok törlése   |  Oszlopok vagy cellák kombinálása adatvesztés nélkül   |   Kerek Formula nélkül ...
Szuper keresés: Több kritérium VLookup    Többértékű VLookup  |   VLookup több munkalapon   |   Fuzzy Lookup ....
Speciális legördülő lista: Gyors legördülő lista létrehozása   |  Függő legördülő lista   |  Többszörösen válassza ki a legördülő listát ....
Oszlopkezelő: Adjon meg egy adott számú oszlopot  |  Oszlopok mozgatása  |  Kapcsolja be a Rejtett oszlopok láthatósági állapotát  |  Tartományok és oszlopok összehasonlítása ...
Kiemelt funkciók: Rács fókusz   |  Design nézet   |   Nagy Formula bár    Munkafüzet és lapkezelő   |  Erőforrás-könyvtár (Auto szöveg)   |  Dátumválasztó   |  Kombinálja a munkalapokat   |  Cellák titkosítása/dekódolása    E-mailek küldése listánként   |  Szuper szűrő   |   Speciális szűrő (félkövér/dőlt/áthúzott szűrés...) ...
A 15 legjobb eszközkészlet12 szöveg Eszközök (Szöveg hozzáadása, Karakterek eltávolítása,...)   |   50 + Táblázatos Típusai (Gantt-diagram,...)   |   40+ Praktikus képletek (Számolja ki az életkort a születésnap alapján,...)   |   19 beszúrás Eszközök (Helyezze be a QR-kódot, Kép beszúrása az útvonalból,...)   |   12 Átalakítás Eszközök (Számok szavakig, Valuta átváltás,...)   |   7 Egyesítés és felosztás Eszközök (Haladó kombinált sorok, Hasított sejtek,...)   |   ... és több

Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz.  Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...

kte lap 201905


Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, I am using the VBA code, but instead of putting the data into separate rows, it is putting it all in a single cell. Does anyone have an idea why it is doing this?
This comment was minimized by the moderator on the site
Hi! After changing the values (ex, watermelon instead of apple) why is the formula not working?
This comment was minimized by the moderator on the site
Hello, Cristina

Our article provides VBA code, doesn't provide a formula. If you change the cell content, you must re-run the code again to get the correct result.
Thank you!
This comment was minimized by the moderator on the site
great job bro, Very useful
This comment was minimized by the moderator on the site
Hello,
You are welcome. Glad it helps. Any questions, please feel free to contact us. Have a great day.
Sincerely,
Mandy
This comment was minimized by the moderator on the site
It shows there's a syntax error on line 3 "Dim xRg As Range" when I'm trying to run this module based on method 1, what should I do about it?
This comment was minimized by the moderator on the site
Hello, JJ, The code works well in my worksheet, which Excel version do you use?Or you can insert a screesnhot of your problem here.
This comment was minimized by the moderator on the site
How would you do it if you want to base it off another column? I have similar data, but column B is a number then notes(like your fruit) in column I, I want to combine all notes in column I until there is another cell in Column B that has only number. Sometimes there are letter under B or the cells are blank which is why it needs to combine until a number. Then finally can it output back to where it started the combine? IE all notes for first number are in column j, but if the next number is 5 rows below that is fine, it just goes in column j but same row number as the number is found?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations