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

Cum se convertește șirul de text separat prin virgulă în listă sau rânduri în Excel?

doc convertește valorile virgulei în lista 1

Presupunând că aveți o listă de valori ale celulei care sunt separate prin virgule, acum trebuie să convertiți aceste șiruri de text separate prin virgule în mai multe rânduri sau o coloană, după cum se arată în următoarea captură de ecran. Cum ar putea împărți mai multe valori de celule în rânduri pe baza delimitatorului de virgule simultan în Excel?

Convertiți șirul de text separat prin virgule în rânduri cu cod VBA

Convertiți șirul de text separat prin virgule în rânduri cu Kutools pentru Excel


Convertiți șirul de text separat prin virgule în rânduri cu cod VBA

Următorul cod VBA vă poate ajuta să convertiți mai multe valori de celule separate prin virgule într-o coloană, faceți următoarele:

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: convertiți șirul de text separat prin virgule în rânduri sau listă

Sub RedistributeCommaDelimitedData()
'Updateby Extendoffice
    Dim xArr() As String
    Dim xAddress As String
    Dim Rg As Range
    Dim Rg1 As Range
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set Rg = Application.InputBox("please select the data range:", "Kutools for Excel", xAddress, , , , , 8)
    If Rg Is Nothing Then Exit Sub
    Set Rg = Application.Intersect(Rg, Rg.Parent.UsedRange)
    If Rg Is Nothing Then Exit Sub
    Set Rg1 = Application.InputBox("please select output cell:", "Kutools for Excel", , , , , , 8)
    If Rg1 Is Nothing Then Exit Sub
    xArr = Split(Join(Application.Transpose(Rg.Value), ","), ",")
    Rg1.Resize(UBound(xArr) + 1) = Application.Transpose(xArr)
    Rg1.Parent.Activate
    Rg1.Resize(UBound(xArr) + 1).Select
End Sub

3. Apoi apăsați F5 tasta pentru a rula acest cod, în caseta de dialog pop-out, selectați intervalul de date pe care doriți să îl convertiți, vedeți captura de ecran:

doc convertește valorile virgulei în lista 2

4. și faceți clic OK, în dialogul următor, specificați o celulă în care doriți să scoateți rezultatul, vedeți captura de ecran:

doc convertește valorile virgulei în lista 3

5. Clic OK butonul, valorile selectate ale celulei separate prin virgule au fost convertite într-o listă de rânduri. Vedeți captura de ecran:

doc convertește valorile virgulei în lista 4


Convertiți șirul de text separat prin virgule în rânduri cu Kutools pentru Excel

Dacă aveţi Kutools pentru Excel, Cu său Celule divizate utilitar, puteți împărți rapid valorile celulei separate prin virgule în mai multe rânduri sau coloane pe baza delimitatorului de virgule, după cum aveți nevoie.

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 ExcelVă rugăm să efectuați pașii următori:

1. Selectați valorile celulei pe care doriți să le convertiți în rânduri pe baza separatorului de virgule.

2. Apoi apasa Kutools > Merge & Split > Celule divizate, vezi captura de ecran:

3. În Celule divizate fereastră de dialog, selectați Împărțiți la rânduri opțiune în cadrul Tip secțiune și apoi din Specificați un separator secțiune, verificați Altele caseta de selectare și apoi introduceți virgula în caseta de text, consultați captura de ecran:

doc convertește valorile virgulei în lista 6 6

4. Apoi apasa Okși va apărea un alt dialog pentru a vă reaminti să selectați o celulă pentru a pune rezultatul, vedeți captura de ecran:

doc convertește valorile virgulei în lista 7

5. Apoi faceți clic pe Ok butonul, celulele separate prin virgule au fost împărțite în mai multe rânduri pe baza delimitatorului de virgule, vezi captura de ecran:

doc convertește valorile virgulei în lista 8

Faceți clic pentru a afla mai multe despre această caracteristică Split Cells ...

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


Demo: convertiți șirul de text separat prin virgulă în rânduri cu Kutools pentru Excel

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!

Legate de articole:

Cum să împărțiți celulele în mai multe coloane sau rânduri prin returnarea căruței?

Cum se împarte valorile celulei în mai multe coloane în Excel?


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

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!
fundul officetab
Comentarii (3)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, am un singur rând, dar această formulă nu funcționează pentru un singur rând, în timp ce funcționează pentru mai multe rânduri, ați putea să mă ghidați despre asta ar fi de mare ajutor. Mulțumesc
Acest comentariu a fost redus la minimum de moderatorul de pe site
actualizare pentru a funcționa pentru o singură celulă de intrare (menționată de Sid postat înaintea mea). Probabil o modalitate de a face acest lucru pentru ambele scenarii, dar asta a funcționat pentru mine, am avut aceeași problemă.

Sub RedistributeCommaDelimitedData_singleCell()

'Actualizare de Extendoffice 201592

Dim xArr() As String

Dim xAddress ca șir

Dim Rg As Range

Dim Rg1 As Range

La data de eroare CV următoare

xAddress = Application.ActiveWindow.RangeSelection.Address

Set Rg = Application.InputBox("vă rugăm să selectați intervalul de date:", "Kutools pentru Excel", xAddress, , , , , 8)

Dacă Rg este nimic, ieșiți din sub

Set Rg = Application.Intersect(Rg, Rg.Parent.UsedRange)

Dacă Rg este nimic, ieșiți din sub

Set Rg1 = Application.InputBox("vă rugăm să selectați celula de ieșire:", "Kutools pentru Excel", , , , , , 8)

Dacă Rg1 nu este nimic, ieșiți din sub



' xArr = Split(Join(Application.Transpose(Rg.value), ","), ",") -------- este nevoie de acest lucru dacă aveți mai multe celule de intrare în intervalul de intrare (Rg)

' înlocuiți cu aceasta pentru o singură celulă de intrare pentru Rg:

xArr = Split(Rg.value, ",")

Rg1.Resize(UBound(xArr) + 1) = Application.Transpose(xArr)

Rg1.Parent.Activate

Rg1.Redimensionare(UBound(xArr) + 1).Select



End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am o celulă cu 667 de caractere, dintre care 119 sunt virgule. Cu acest cod VBA nu pot împărți. Ma puteti ajuta va rog?Va multumesc mult!
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL