Loncat ke daftar isi utama

Bagaimana cara mengubah tabel gaya matriks menjadi tiga kolom di Excel?

Misalkan Anda memiliki tabel bergaya matriks yang berisi judul kolom dan judul baris, dan sekarang Anda ingin mengonversi tabel gaya ini menjadi tabel tiga kolom, itu juga disebut tabel daftar seperti gambar berikut yang ditampilkan, apakah Anda memiliki cara yang baik untuk menyelesaikannya? masalah di Excel?

Ubah tabel gaya matriks menjadi daftar dengan PivotTable

Ubah tabel gaya matriks menjadi daftar dengan kode VBA

Ubah tabel gaya matriks menjadi daftar dengan Kutools for Excel

doc mengubah matriks ke daftar 1


Di Excel, tidak ada fitur langsung bagi kami untuk mengonversi tabel gaya matriks menjadi tabel tiga kolom, tetapi, jika Anda terbiasa dengan PivotTable, ini mungkin membantu Anda. Silakan lakukan dengan langkah-langkah berikut:

1. Aktifkan lembar kerja yang ingin Anda gunakan, lalu tahan Alt + D, lalu tekan P di keyboard, di munculkan Panduan PivotTable dan PivotChart dialog, pilih Beberapa rentang konsolidasi bawah Di mana data yang ingin Anda analisis bagian, lalu pilih Tabel pivot bawah Jenis laporan apa yang ingin Anda buat bagian, lihat tangkapan layar:

doc mengubah matriks ke daftar 2

2. Lalu klik Selanjutnya tombol, di Langkah 2a dari 3 wizard, pilih Saya akan membuat bidang halaman opsi, lihat tangkapan layar:

doc mengubah matriks ke daftar 3

3. Lanjutkan mengklik Selanjutnya tombol, di Langkah 2b dari 3 wizard, klik doc mengubah matriks ke daftar 5 tombol untuk memilih rentang data yang ingin Anda ubah, lalu klik Add tombol untuk menambahkan rentang data ke Semua rentang kotak daftar, lihat tangkapan layar:

doc mengubah matriks ke daftar 4

4. Dan klik Selanjutnya tombol, masuk Langkah 3 dari 3 wizard, pilih lokasi untuk tabel pivot yang Anda inginkan.

doc mengubah matriks ke daftar 6

5. Lalu klik Finish tombol, tabel pivot telah dibuat sekaligus, lihat tangkapan layar:

doc mengubah matriks ke daftar 7

6. Di tabel pivot, klik dua kali sel yang berpotongan dari Grand Total, dalam hal ini, saya akan mengklik dua kali sel F22, dan itu akan menghasilkan tabel tiga kolom seperti gambar berikut yang ditampilkan:

doc mengubah matriks ke daftar 8

7. Dan terakhir, Anda dapat mengonversi format tabel ke kisaran normal dengan memilih tabel lalu pilih tabel > Ubah ke Range dari menu konteks, lihat tangkapan layar:

doc mengubah matriks ke daftar 9


Jika Anda tidak menyukai metode pertama, kode VBA berikut juga dapat membantu Anda.

1. tekan Alt + F11 untuk menampilkan Microsoft Visual Basic untuk Aplikasi jendela.

2. Di jendela, klik Menyisipkan > Modul untuk menampilkan jendela modul baru, lalu salin dan tempel kode VBA berikut ke jendela modul.

Kode VBA: Ubah tabel gaya matriks menjadi daftar

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. Lalu tekan F5 kunci untuk menjalankan kode ini, dan kotak prompt muncul untuk membiarkan Anda memilih label kolom data, lihat tangkapan layar:

doc mengubah matriks ke daftar 10

4. Dan kemudian klik OK tombol, di kotak prompt berikutnya, pilih label baris, lihat tangkapan layar:

doc mengubah matriks ke daftar 11

5. Lanjutkan mengklik OK, lalu pilih rentang data tidak termasuk judul kolom dan baris di kotak prompt, lihat tangkapan layar:

doc mengubah matriks ke daftar 12

6. Dan kemudian klik OK, di kotak dialog ini, pilih sel di mana Anda ingin mencari hasilnya. Lihat tangkapan layar:

doc mengubah matriks ke daftar 13

7. Terakhir, klik OK, dan Anda akan mendapatkan tabel tiga kolom sekaligus.


Kedua metode di atas agak merepotkan, berikut saya perkenalkan cara yang mudah - Kutools untuk Excel, Dengan yang Ubah Urutan Dimensi Tabel fitur, Anda dapat dengan cepat mengkonversi antara matriks sel dan tabel daftar.

Kutools untuk Excel : dengan lebih dari 300 add-in Excel yang praktis, gratis untuk dicoba tanpa batasan dalam 30 hari

Setelah menginstal Kutools untuk Excel, lakukan langkah-langkah berikut:

1. Klik Kutools > Jarak > Ubah Urutan Dimensi Tabel, lihat tangkapan layar:

2. di Ubah Urutan Dimensi Tabel kotak dialog:

(1.) Pilih Tabel silang ke daftar pilihan di bawah Jenis transpose.

(2.) Lalu klik doc mengubah matriks ke daftar 5 tombol di bawah Rentang sumber untuk memilih rentang data yang ingin Anda ubah.

(3.) Kemudian klik doc mengubah matriks ke daftar 5 tombol di bawah Rentang hasil untuk memilih sel tempat Anda ingin meletakkan hasilnya.

doc mengubah matriks ke daftar 15

3. Dan kemudian klik OK tombol, dan Anda akan mendapatkan hasil berikut yang termasuk pemformatan sel asli:

doc mengubah matriks ke daftar 16

Dengan utilitas ini, Anda juga mengubah tabel daftar datar menjadi tabel silang 2 dimensi.

Untuk mengetahui lebih lanjut tentang fitur Dimensi Tabel Transpose ini.

Unduh dan uji coba gratis Kutools untuk Excel Sekarang!


Kutools untuk Excel: dengan lebih dari 300 add-in Excel yang praktis, gratis untuk dicoba tanpa batasan dalam 30 hari. Unduh dan uji coba gratis Sekarang!

Alat Produktivitas Kantor Terbaik

馃 Kutools AI Ajudan: Merevolusi analisis data berdasarkan: Eksekusi Cerdas   |  Hasilkan Kode  |  Buat Rumus Khusus  |  Analisis Data dan Hasilkan Grafik  |  Aktifkan Fungsi Kutools...
Fitur Populer: Temukan, Sorot, atau Identifikasi Duplikat   |  Hapus Baris Kosong   |  Gabungkan Kolom atau Sel tanpa Kehilangan Data   |   Putaran tanpa Formula ...
Pencarian Super: VLookup Beberapa Kriteria    VLookup Nilai Berganda  |   VLookup di Beberapa Lembar   |   Pencarian Fuzzy ....
Daftar Drop-down Lanjutan: Buat Daftar Drop Down dengan Cepat   |  Daftar Drop Down yang Bergantung   |  Multi-pilih Drop Down List ....
Manajer Kolom: Tambahkan Jumlah Kolom Tertentu  |  Pindahkan Kolom  |  Alihkan Status Visibilitas Kolom Tersembunyi  |  Bandingkan Rentang & Kolom ...
Fitur Unggulan: Fokus Kisi   |  Tampilan Desain   |   Bar Formula Besar    Manajer Buku Kerja & Lembar   |  Perpustakaan Sumberdaya (Teks otomatis)   |  Pemetik tanggal   |  Gabungkan Lembar Kerja   |  Enkripsi/Dekripsi Sel    Kirim Email berdasarkan Daftar   |  Filter Super   |   Filter Khusus (filter tebal/miring/coret...) ...
15 Perangkat Teratas12 Teks Tools (Tambahkan Teks, Hapus Karakter, ...)   |   50 + Grafik jenis (Gantt Chart, ...)   |   40+ Praktis Rumus (Hitung usia berdasarkan ulang tahun, ...)   |   19 Insersi Tools (Masukkan Kode QR, Sisipkan Gambar dari Jalur, ...)   |   12 Konversi Tools (Angka ke Kata, Konversi Mata Uang, ...)   |   7 Gabungkan & Pisahkan Tools (Lanjutan Gabungkan Baris, Pisahkan Sel, ...)   |   ... dan banyak lagi

Tingkatkan Keterampilan Excel Anda dengan Kutools for Excel, dan Rasakan Efisiensi yang Belum Pernah Ada Sebelumnya. Kutools for Excel Menawarkan Lebih dari 300 Fitur Lanjutan untuk Meningkatkan Produktivitas dan Menghemat Waktu.  Klik Di Sini untuk Mendapatkan Fitur yang Paling Anda Butuhkan...

Deskripsi Produk


Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
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