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

Πώς να μετατρέψετε πίνακα στυλ matrix σε τρεις στήλες στο Excel;

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

Μετατροπή πίνακα στυλ πίνακα σε λίστα με Συγκεντρωτικό πίνακα

Μετατροπή πίνακα στυλ πίνακα σε λίστα με κώδικα VBA

Μετατροπή πίνακα στυλ matrix σε λίστα με το Kutools για Excel

doc μετατρέψτε τη μήτρα στη λίστα 1


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

1. Ενεργοποιήστε το φύλλο εργασίας που θέλετε να χρησιμοποιήσετε και, στη συνέχεια, κρατήστε πατημένο Alt + D, και στη συνέχεια πατήστε P στο πληκτρολόγιο, στο αναδυόμενο PivotTable και PivotChart Wizard διαλόγου, επιλέξτε Πολλαπλά εύρη ενοποίησης σύμφωνα με το Πού είναι τα δεδομένα που θέλετε να αναλύσετε ενότητα και, στη συνέχεια, επιλέξτε Συγκεντρωτικός πίνακας σύμφωνα με το Τι είδους αναφορά θέλετε να δημιουργήσετε ενότητα, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τη μήτρα στη λίστα 2

2. Στη συνέχεια κάντε κλικ στο κουμπί Επόμενο κουμπί, στο Βήμα 2α από 3 οδηγός, επιλέξτε το Θα δημιουργήσω τα πεδία της σελίδας επιλογή, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τη μήτρα στη λίστα 3

3. Κάντε κλικ Επόμενο κουμπί, στο Βήμα 2β από 3 , κάντε κλικ στο κουμπί doc μετατρέψτε τη μήτρα στη λίστα 5 για να επιλέξετε το εύρος δεδομένων που θέλετε να μετατρέψετε και, στη συνέχεια, κάντε κλικ στο κουμπί Πρόσθεση κουμπί για να προσθέσετε το εύρος δεδομένων στο Όλα τα εύρη πλαίσιο λίστας, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τη μήτρα στη λίστα 4

4. και κάντε κλικ Επόμενο κουμπί, σε Βήμα 3 της 3 wizard, επιλέξτε μια θέση για τον συγκεντρωτικό πίνακα όπως θέλετε.

doc μετατρέψτε τη μήτρα στη λίστα 6

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

doc μετατρέψτε τη μήτρα στη λίστα 7

6. Στον συγκεντρωτικό πίνακα, κάντε διπλό κλικ στο τέμνον κελί του Grand Total, σε αυτήν την περίπτωση, θα κάνω διπλό κλικ στο κελί F22 και θα δημιουργήσει έναν πίνακα τριών στηλών όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:

doc μετατρέψτε τη μήτρα στη λίστα 8

7. Και τέλος, μπορείτε να μετατρέψετε τη μορφή πίνακα στο κανονικό εύρος επιλέγοντας τον πίνακα και στη συνέχεια επιλέξτε Τραπέζι > Μετατροπή σε εύρος από το μενού περιβάλλοντος, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τη μήτρα στη λίστα 9


Εάν δεν σας αρέσει η πρώτη μέθοδος, ο παρακάτω κώδικας VBA μπορεί επίσης να σας βοηθήσει.

1. Τύπος Alt + F11 για να εμφανιστεί το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Στο παράθυρο, κάντε κλικ στο Κύριο θέμα > Μονάδα μέτρησης για να εμφανιστεί ένα νέο παράθυρο λειτουργικής μονάδας και, στη συνέχεια, αντιγράψτε και επικολλήστε τον ακόλουθο κώδικα VBA στο παράθυρο της μονάδας.

Κωδικός VBA: Μετατροπή πίνακα στυλ πίνακα σε λίστα

Sub ConvertTable()
'Update 20150512
Dim Rng As Range
Dim cRng As Range
Dim rRng As Range
Dim xOutRng As Range
xTitleId = "KutoolsforExcel"
Set cRng = Application.InputBox("Select your Column labels", xTitleId, Type:=8)
Set rRng = Application.InputBox("Select Your Row Labels", xTitleId, Type:=8)
Set Rng = Application.InputBox("Select your data", xTitleId, Type:=8)
Set outRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set xWs = Rng.Worksheet
k = 1
xColumns = rRng.Column
xRow = cRng.Row
For i = Rng.Rows(1).Row To Rng.Rows(1).Row + Rng.Rows.Count - 1
    For j = Rng.Columns(1).Column To Rng.Columns(1).Column + Rng.Columns.Count - 1
        outRng.Cells(k, 1) = xWs.Cells(i, xColumns)
        outRng.Cells(k, 2) = xWs.Cells(xRow, j)
        outRng.Cells(k, 3) = xWs.Cells(i, j)
        k = k + 1
    Next j
Next i
End Sub

3. Στη συνέχεια πατήστε F5 κλειδί για την εκτέλεση αυτού του κώδικα και εμφανίζεται ένα πλαίσιο προτροπής για να σας επιτρέψει να επιλέξετε τις ετικέτες στηλών των δεδομένων, δείτε το στιγμιότυπο οθόνης:

doc μετατρέψτε τη μήτρα στη λίστα 10

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

doc μετατρέψτε τη μήτρα στη λίστα 11

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

doc μετατρέψτε τη μήτρα στη λίστα 12

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

doc μετατρέψτε τη μήτρα στη λίστα 13

7. Επιτέλους, κάντε κλικ στο κουμπί OKκαι θα λάβετε έναν πίνακα τριών στηλών ταυτόχρονα.


Και οι δύο παραπάνω μέθοδοι είναι κάπως ενοχλητικές, εδώ, θα σας παρουσιάσω έναν εύκολο τρόπο - Kutools για Excel, Με τους Μεταφορά διαστάσεων πίνακα δυνατότητα, μπορείτε να μετατρέψετε γρήγορα μεταξύ σας έναν πίνακα κελιών και έναν πίνακα λιστών.

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

Μετά την εγκατάσταση Kutools για Excel, κάντε τα εξής βήματα:

1. Κλίκ Kutools > Σειρά > Μεταφορά διαστάσεων πίνακα, δείτε το στιγμιότυπο οθόνης:

2. Στην Μεταφορά διαστάσεων πίνακα κουτί διαλόγου:

(1.) Επιλέξτε Σταυρός πίνακας για λίστα κάτω από την επιλογή Μεταφορά τύπου.

(2.) Και στη συνέχεια κάντε κλικ doc μετατρέψτε τη μήτρα στη λίστα 5 κάτω από το κουμπί Εύρος πηγής για να επιλέξετε το εύρος δεδομένων που θέλετε να μετατρέψετε.

(3.) Στη συνέχεια κάντε κλικ doc μετατρέψτε τη μήτρα στη λίστα 5 κάτω από το κουμπί Εύρος αποτελεσμάτων για να επιλέξετε ένα κελί όπου θέλετε να βάλετε το αποτέλεσμα.

doc μετατρέψτε τη μήτρα στη λίστα 15

3. Και στη συνέχεια κάντε κλικ στο κουμπί OK και θα λάβετε το ακόλουθο αποτέλεσμα που περιλαμβάνει την αρχική μορφοποίηση κελιού:

doc μετατρέψτε τη μήτρα στη λίστα 16

Με αυτό το βοηθητικό πρόγραμμα, εσείς επίσης μετατροπή πίνακα επίπεδης λίστας σε δισδιάστατο πίνακα.

Για να μάθετε περισσότερα σχετικά με αυτήν τη δυνατότητα Μεταφοράς πίνακα διαστάσεων.

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


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

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

🤖 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 (10)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Thanks for the tips. It's greatly saved my time and manual efforts.
This comment was minimized by the moderator on the site
Anybody know how to do this in a mac?
This comment was minimized by the moderator on the site
Sub ConvertTable_UseThis()

Dim Rng As Range
Dim cRng As Range
Dim rRng As Range
Dim xOutRng As Range
Dim xRng As Range, cRow As Integer, cCol As Integer


xTitleId = "Convert Table"
Set xRng = Application.Selection
Set xRng = Application.InputBox("Please select range:", "Number Range", Selection.Address, , , , , 8)
cRow = xRng.Rows.Count
cCol = xRng.Columns.Count


Set cRng = Range(xRng.Cells(1, 2), xRng.Cells(1, cCol))
Set rRng = Range(xRng.Cells(2, 1), xRng.Cells(cRow, 1))
Set Rng = Range(xRng.Cells(2, 2), xRng.Cells(cRow, cCol))
Set outRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set xWs = Rng.Worksheet
k = 1
xColumns = rRng.Column
xRow = cRng.Row
For i = Rng.Rows(1).Row To Rng.Rows(1).Row + Rng.Rows.Count - 1
For j = Rng.Columns(1).Column To Rng.Columns(1).Column + Rng.Columns.Count - 1
outRng.Cells(k, 1) = xWs.Cells(i, xColumns)
outRng.Cells(k, 2) = xWs.Cells(xRow, j)
outRng.Cells(k, 3) = xWs.Cells(i, j)
k = k + 1
Next j
Next i
End Sub
This comment was minimized by the moderator on the site
For the VBA Code, one seems to really need this:xColumns = cRng.Column
xRow = rRng.Row
This comment was minimized by the moderator on the site
do you have a code with a tweak where the leftmost column of a selection is column labels and the topmost row of a selection is row labels?

Thanks in advance,
This comment was minimized by the moderator on the site
Sub ConvertTable_UseThis()

Dim Rng As Range
Dim cRng As Range
Dim rRng As Range
Dim xOutRng As Range
Dim xRng As Range, cRow As Integer, cCol As Integer


xTitleId = "Convert Table"
Set xRng = Application.Selection
Set xRng = Application.InputBox("Please select range:", "Number Range", Selection.Address, , , , , 8)
cRow = xRng.Rows.Count
cCol = xRng.Columns.Count


Set cRng = Range(xRng.Cells(1, 2), xRng.Cells(1, cCol))
Set rRng = Range(xRng.Cells(2, 1), xRng.Cells(cRow, 1))
Set Rng = Range(xRng.Cells(2, 2), xRng.Cells(cRow, cCol))
Set outRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set xWs = Rng.Worksheet
k = 1
xColumns = rRng.Column
xRow = cRng.Row
For i = Rng.Rows(1).Row To Rng.Rows(1).Row + Rng.Rows.Count - 1
For j = Rng.Columns(1).Column To Rng.Columns(1).Column + Rng.Columns.Count - 1
outRng.Cells(k, 1) = xWs.Cells(i, xColumns)
outRng.Cells(k, 2) = xWs.Cells(xRow, j)
outRng.Cells(k, 3) = xWs.Cells(i, j)
k = k + 1
Next j
Next i
End Sub
This comment was minimized by the moderator on the site
Thanks a Ton, really appreciate the way you have explained. very useful
This comment was minimized by the moderator on the site
Thanks alot for this useful tool
This comment was minimized by the moderator on the site
Thanks, this was exactly what I was looking for. Awesome:)
This comment was minimized by the moderator on the site
what if i have 4 or more column?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations