Μετάβαση στο κύριο περιεχόμενο

Πώς να μετατρέψετε συμβολοσειρά κειμένου διαχωρισμένη με κόμμα σε λίστα ή σειρές στο Excel;

doc μετατρέψτε τις τιμές κόμμα σε λίστα 1

Ας υποθέσουμε, έχετε μια λίστα τιμών κελιών που διαχωρίζονται με κόμματα, τώρα, πρέπει να μετατρέψετε αυτές τις συμβολοσειρές κειμένου διαχωρισμένες με κόμμα σε πολλές σειρές ή μια στήλη όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης. Πώς θα μπορούσαν να χωριστούν πολλές τιμές κελιών σε σειρές με βάση το κόμμα ταυτόχρονα στο Excel;

Μετατροπή συμβολοσειράς κειμένου διαχωρισμένου με κόμμα σε σειρές με κώδικα VBA

Μετατροπή συμβολοσειράς κειμένου διαχωρισμένου με κόμμα σε σειρές με το Kutools για Excel


Μετατροπή συμβολοσειράς κειμένου διαχωρισμένου με κόμμα σε σειρές με κώδικα VBA

Ο ακόλουθος κώδικας VBA μπορεί να σας βοηθήσει να μετατρέψετε πολλές τιμές κελιών διαχωρισμένων με κόμμα σε μια στήλη, κάντε τα εξής:

1. Κρατήστε πατημένο το Alt + F11 στο Excel και ανοίγει το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε την ακόλουθη μακροεντολή στο Μονάδα μέτρησης Παράθυρο.

Κωδικός VBA: Μετατροπή συμβολοσειράς κειμένου διαχωρισμένου με κόμμα σε γραμμές ή λίστα

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. Στη συνέχεια πατήστε F5 για να εκτελέσετε αυτόν τον κώδικα, στο αναδυόμενο παράθυρο διαλόγου, επιλέξτε το εύρος δεδομένων που θέλετε να μετατρέψετε, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τις τιμές κόμμα σε λίστα 2

4. και κάντε κλικ OK, στον ακόλουθο διάλογο, καθορίστε ένα κελί στο οποίο θέλετε να εξάγετε το αποτέλεσμα, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τις τιμές κόμμα σε λίστα 3

5. Κλίκ OK κουμπί, οι επιλεγμένες τιμές κελιού διαχωρισμένες με κόμμα έχουν μετατραπεί σε λίστα γραμμών. Δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τις τιμές κόμμα σε λίστα 4


Μετατροπή συμβολοσειράς κειμένου διαχωρισμένου με κόμμα σε σειρές με το Kutools για Excel

Εάν έχετε Kutools για Excel, Με τους Διαίρεση κελιών βοηθητικό πρόγραμμα, μπορείτε να διαχωρίσετε γρήγορα τις τιμές κελιών που διαχωρίζονται με κόμμα σε πολλές σειρές ή στήλες με βάση το διαχωριστικό κόμμα, όπως χρειάζεστε.

Kutools για Excel : με περισσότερα από 300 εύχρηστα πρόσθετα Excel, δωρεάν δοκιμή χωρίς περιορισμό σε 30 ημέρες. 

Μετά την εγκατάσταση Kutools για Excel, κάντε τα παρακάτω βήματα:

1. Επιλέξτε τις τιμές κελιών που θέλετε να μετατρέψετε σε σειρές με βάση το διαχωριστικό κόμμα.

2. Στη συνέχεια κάντε κλικ στο κουμπί Kutools > Συγχώνευση & διαχωρισμός > Διαίρεση κελιών, δείτε το στιγμιότυπο οθόνης:

3. Στην Διαίρεση κελιών , επιλέξτε Διαχωρισμός σε σειρές επιλογή βάσει του Χαρακτηριστικά ενότητα και στη συνέχεια από το Καθορίστε ένα διαχωριστικό , ελέγξτε ΑΛΛΑ πλαίσιο ελέγχου και, στη συνέχεια, εισαγάγετε το κόμμα στο πλαίσιο κειμένου, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τις τιμές κόμμα στη λίστα 6 6

4. Στη συνέχεια κάντε κλικ στο κουμπί Okκαι θα εμφανιστεί ένας άλλος διάλογος για να σας υπενθυμίσει ότι επιλέγετε ένα κελί για να βάλετε το αποτέλεσμα, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τις τιμές κόμμα σε λίστα 7

5. Και στη συνέχεια κάντε κλικ στο κουμπί Ok κουμπί, τα κελιά διαχωρισμένα με κόμμα έχουν χωριστεί σε πολλές σειρές με βάση το διαχωριστικό κόμμα, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τις τιμές κόμμα σε λίστα 8

Κάντε κλικ για να μάθετε περισσότερα σχετικά με αυτήν τη δυνατότητα Split Cells…

Κατεβάστε και δωρεάν δοκιμή Kutools για Excel τώρα!


Επίδειξη: Μετατροπή συμβολοσειράς κειμένου διαχωρισμένου με κόμμα σε σειρές με το Kutools για Excel

Kutools για Excel: με περισσότερα από 300 εύχρηστα πρόσθετα του Excel, δωρεάν δοκιμή χωρίς περιορισμό σε 30 ημέρες. Λήψη και δωρεάν δοκιμή τώρα!

Σχετικά άρθρα:

Πώς να χωρίσετε κελιά σε πολλές στήλες ή σειρές με επιστροφή μεταφοράς;

Πώς να διαιρέσετε τις τιμές των κελιών σε πολλές στήλες στο Excel;

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

🤖 Kutools AI Aide: Επανάσταση στην ανάλυση δεδομένων με βάση: Ευφυής Εκτέλεση   |  Δημιουργία κώδικα  |  Δημιουργία προσαρμοσμένων τύπων  |  Αναλύστε δεδομένα και δημιουργήστε γραφήματα  |  Επίκληση Λειτουργιών Kutools...
Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

Περιγραφή


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
update to work for a single input cell (mentioned by Sid posted before me). Probably a way to do this for both scenarios, but this worked for me, I had the same issue.

Sub RedistributeCommaDelimitedData_singleCell()

'Updateby Extendoffice 201592

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), ","), ",") -------- need this if you have multiple input cells in your input range (Rg)

' replace with this for single input cell for Rg:

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

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

Rg1.Parent.Activate

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



End Sub
This comment was minimized by the moderator on the site
I have a cell with 667 characters, of which 119 are commas.With this VBA code I can't split. Can you help me please?Thank you very much!
This comment was minimized by the moderator on the site
Hi, I have a single row but this formula do not work for single row while it works for multiple rows could you guide on that would be a great help Thanks
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations