Note: The other languages of the website are Google-translated. Back to English

Hogyan lehet összefűzni a cellák oszlopait és megőrizni a szöveg színét az Excelben?

Mint mindannyian tudjuk, a celloszlopok összefűzése vagy egyesítése során egy oszlopba kerül a cella formázása (például a szöveg betűtípusának színe, a szám formázása stb.). Ebben a cikkben bemutatok néhány trükköt, amelyekkel összekapcsolhatjuk a cellák oszlopait, és a lehető legegyszerűbben megtarthatjuk a szöveg színét az Excel programban.

Összekapcsolja a cellák oszlopait, és megtartja a szöveg betűszínét VBA kóddal


Összekapcsolja a cellák oszlopait, és megtartja a szöveg betűszínét VBA kóddal

Ennek a feladatnak az Excelben történő elvégzéséhez a következő VBA-kód kedvezhet, 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 celloszlopokat és megtartja a szöveg színét:

Sub MergeFormatCell()
'Updateby Extendoffice
    Dim xSRg As Range
    Dim xDRg As Range
    Dim xRgEachRow As Range
    Dim xRgEach As Range
    Dim xRgVal As String
    Dim I As Integer
    Dim xRgLen As Integer
    Dim xSRgRows As Integer
    Dim xAddress As String
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xSRg = Application.InputBox("Please select cell columns to concatenate:", "KuTools For Excel", xAddress, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSRgRows = xSRg.Rows.Count
    Set xDRg = Application.InputBox("Please select cells to output the result:", "KuTools For Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    Set xDRg = xDRg(1)
    For I = 1 To xSRgRows
        xRgLen = 1
        With xDRg.Offset(I - 1)
            .Value = vbNullString
            .ClearFormats
            Set xRgEachRow = xSRg(1).Offset(I - 1).Resize(1, xSRg.Columns.Count)
            For Each xRgEach In xRgEachRow
                .Value = .Value & Trim(xRgEach.Value) & " "
            Next
            For Each xRgEach In xRgEachRow
                xRgVal = xRgEach.Value
                With .Characters(xRgLen, Len(Trim(xRgVal))).Font
                .Name = xRgEach.Font.Name
                .FontStyle = xRgEach.Font.FontStyle
                .Size = xRgEach.Font.Size
                .Strikethrough = xRgEach.Font.Strikethrough
                .Superscript = xRgEach.Font.Superscript
                .Subscript = xRgEach.Font.Subscript
                .OutlineFont = xRgEach.Font.OutlineFont
                .Shadow = xRgEach.Font.Shadow
                .Underline = xRgEach.Font.Underline
                .ColorIndex = xRgEach.Font.ColorIndex
                End With
                xRgLen = xRgLen + Len(Trim(xRgVal)) + 1
            Next
        End With
    Next I
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ékezteti Önt arra, hogy válassza ki a szöveg színével kombinálni kívánt adattartományt, lásd a képernyőképet:

4. Kattintson a gombra OK, megjelenik egy másik párbeszédpanel, válassza ki azokat a cellákat, amelyekre a kombinált eredményeket ki szeretné adni, lásd a képernyőképet:

5. Ezután kattintson OK gombra, az oszlopokat összefűztük a szöveg színének elvesztése nélkül, az alábbi képernyőkép szerint:

Megjegyzések: Ha az összesítendő adatok számokat tartalmaznak, akkor a makrókód nem működik megfelelően.


A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2021 és 365 verziókat. Minden nyelvet támogat. Könnyű üzembe helyezés vállalatában vagy szervezetében. Teljes funkciók 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza 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!
officetab alja
A megjegyzések rendezése szerint
Hozzászólások (9)
Még nincs értékelés. Legyen Ön az első, aki értékel!
A weboldal moderátora ezt a megjegyzést minimalizálta
Ez a kód nagyon jól működik. De hogyan adhatok szóközt a szöveg elé vagy után?
A weboldal moderátora ezt a megjegyzést minimalizálta
Helló,
Ez a módszer jól működik, amíg az xRgLen nem haladja meg a 255-öt.
Úgy tűnik ez a paraméter egy bájt :-(
Hogyan lehet ezt a korlátozást túllépni?
A weboldal moderátora ezt a megjegyzést minimalizálta
Fantástica la macro de concatenar cadena de texto conservando formato de origen. En mi caso no funcionaba con F5, pero en la pestaña macro, modificar y opciones me allowe entrar el modo de ejecucion con CTRL+letra y funciona de maravilla. Köszönöm szépen.
A weboldal moderátora ezt a megjegyzést minimalizálta
Habría manera de hacerlo con números?
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm a kódot.
Ha a szövegben „( )” szerepel, például „tomate (tomates)”. Nem működik olyan jól. Van valamit módosítani, hogy működjön a(z) "( ) "?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Rah!
Hogy vagy? Ha a szövegben "( )" szerepel, akkor nem kell módosítanunk a VBA kódot. Kérjük, nézze meg a képernyőképet, a "paradicsom (paradicsom)" szöveg sikeresen kombinálható más cella oszlopokkal egy oszlopba. Remélem, hogy segíthet.
Tisztelettel,
Mandy
A weboldal moderátora ezt a megjegyzést minimalizálta
köszönöm a kódot!
Lehet-e automatikusan frissíteni az összefűzött oszlopot, ha bármilyen változás történik?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Kathy,
Sajnos jelenleg erre nincs jó módszer, a cellatartalom megváltoztatása után újra le kell futtatnia a kódot. 😂
Köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
Rendben, köszönöm a válaszát
Még senki sem írt megjegyzést
Hagyja meg észrevételeit
Feladás vendégként
×
Értékeld ezt a bejegyzést:
0   Karakterek
Javasolt helyek

Kövess minket

Copyright © 2009 - www.extendoffice.com. | Minden jog fenntartva. Powered by ExtendOffice. | Oldaltérkép
A Microsoft és az Office logó a Microsoft Corporation védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és / vagy más országokban.
Sectigo SSL védi