Bagaimana cara membagi data menjadi beberapa lembar kerja berdasarkan kolom di Excel?
Misalkan Anda memiliki lembar kerja dengan banyak baris data, dan sekarang, Anda perlu membagi data menjadi beberapa lembar kerja berdasarkan Nama kolom (lihat tangkapan layar berikut), dan nama-nama dimasukkan secara acak. Mungkin Anda dapat mengurutkannya terlebih dahulu, lalu menyalin dan menempelkannya satu per satu ke lembar kerja baru lainnya. Namun hal ini membutuhkan kesabaran Anda untuk melakukan copy paste berulang kali. Hari ini, saya akan berbicara tentang beberapa trik cepat untuk menyelesaikan tugas ini.
Pisahkan data menjadi beberapa lembar kerja berdasarkan kolom dengan kode VBA
Pisahkan data menjadi beberapa lembar kerja berdasarkan kolom dengan Kutools for Excel
Pisahkan data menjadi beberapa lembar kerja berdasarkan kolom dengan kode VBA
Jika Anda ingin membagi data berdasarkan nilai kolom dengan cepat dan otomatis, kode VBA berikut adalah pilihan yang baik. Harap lakukan seperti ini:
1. Tahan ALT + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.
2. Klik Menyisipkan > Modul, dan tempel kode berikut di Module Window.
Sub Splitdatabycol()
'updateby Extendoffice
Dim lr As Long
Dim ws As Worksheet
Dim vcol, i As Integer
Dim icol As Long
Dim myarr As Variant
Dim title As String
Dim titlerow As Integer
Dim xTRg As Range
Dim xVRg As Range
Dim xWSTRg As Worksheet
Dim xWS As Worksheet
On Error Resume Next
Set xTRg = Application.InputBox("Please select the header rows:", "Kutools for Excel", "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set xVRg = Application.InputBox("Please select the column you want to split data based on:", "Kutools for Excel", "", Type:=8)
If TypeName(xVRg) = "Nothing" Then Exit Sub
vcol = xVRg.Column
Set ws = xTRg.Worksheet
lr = ws.Cells(ws.Rows.Count, vcol).End(xlUp).Row
title = xTRg.AddressLocal
titlerow = xTRg.Cells(1).Row
icol = ws.Columns.Count
ws.Cells(1, icol) = "Unique"
Application.DisplayAlerts = False
If Not Evaluate("=ISREF('xTRgWs_Sheet!A1')") Then
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
Else
Sheets("xTRgWs_Sheet").Delete
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
End If
Set xWSTRg = Sheets("xTRgWs_Sheet")
xTRg.Copy
xWSTRg.Paste Destination:=xWSTRg.Range("A1")
ws.Activate
For i = (titlerow + xTRg.Rows.Count) To lr
On Error Resume Next
If ws.Cells(i, vcol) <> "" And Application.WorksheetFunction.Match(ws.Cells(i, vcol), ws.Columns(icol), 0) = 0 Then
ws.Cells(ws.Rows.Count, icol).End(xlUp).Offset(1) = ws.Cells(i, vcol)
End If
Next
myarr = Application.WorksheetFunction.Transpose(ws.Columns(icol).SpecialCells(xlCellTypeConstants))
ws.Columns(icol).Clear
For i = 2 To UBound(myarr)
ws.Range(title).AutoFilter field:=vcol, Criteria1:=myarr(i) & ""
If Not Evaluate("=ISREF('" & myarr(i) & "'!A1)") Then
Set xWS = Sheets.Add(after:=Worksheets(Worksheets.Count))
xWS.Name = myarr(i) & ""
Else
xWS.Move after:=Worksheets(Worksheets.Count)
End If
xWSTRg.Range(title).Copy
xWS.Paste Destination:=xWS.Range("A1")
ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy xWS.Range("A" & (titlerow + xTRg.Rows.Count))
Sheets(myarr(i) & "").Columns.AutoFit
Next
xWSTRg.Delete
ws.AutoFilterMode = False
ws.Activate
Application.DisplayAlerts = True
End Sub
3. Lalu tekan F5 kunci untuk menjalankan kode, dan kotak prompt muncul untuk mengingatkan Anda memilih baris header, lihat tangkapan layar:
4. Dan kemudian, klik OK tombol, dan di kotak prompt kedua, pilih data kolom yang ingin Anda bagi berdasarkan, lihat tangkapan layar:
5. Lalu klik OK, dan semua data di lembar kerja aktif dipecah menjadi beberapa lembar kerja berdasarkan nilai kolom. Dan lembar kerja yang dipisahkan diberi nama dengan nama sel yang dipisahkan. Lihat tangkapan layar:
Note: Lembar kerja terpisah ditempatkan di akhir buku kerja tempat lembar kerja master berada.
Pisahkan data menjadi beberapa lembar kerja berdasarkan kolom dengan Kutools for Excel
Sebagai pemula Excel, kode VBA yang panjang ini agak sulit bagi kami, dan kebanyakan dari kami bahkan tidak tahu cara memodifikasi kode sesuai kebutuhan kami. Di sini, saya akan memperkenalkan Anda alat multifungsi--Kutools for Excel, nya Data split utilitas tidak hanya dapat membantu Anda untuk membagi data menjadi beberapa lembar kerja berdasarkan kolom, tetapi juga dapat membagi data dengan jumlah baris.
Catatan:Untuk menerapkan ini Data split, pertama, Anda harus mengunduh Kutools for Excel, lalu terapkan fitur dengan cepat dan mudah.
Setelah menginstal Kutools for Excel, lakukan seperti ini:
1. Pilih rentang data yang ingin Anda pisahkan.
2. Klik Kutools Ditambah > Lembar Kerja > Data split, lihat tangkapan layar:
3. di Pisahkan Data menjadi Beberapa Lembar Kerja kotak dialog, Anda perlu:
1). Pilih Kolom tertentu pilihan dalam Pisahkan berdasarkan bagian, dan pilih nilai kolom yang ingin Anda pisahkan datanya berdasarkan di daftar turun bawah. (Jika data Anda memiliki header dan Anda ingin memasukkannya ke dalam setiap lembar kerja split baru, harap periksa Data saya memiliki tajuk pilihan.)
2). Kemudian Anda dapat menentukan nama lembar kerja terpisah, di bawah Nama lembar kerja baru bagian, tentukan aturan nama lembar kerja dari Peraturan daftar drop-down, Anda dapat menambahkan Awalan or Akhiran untuk nama sheet juga.
3). Klik OK tombol. Lihat tangkapan layar:
4. Sekarang data dipecah menjadi beberapa lembar kerja di buku kerja baru.
Klik untuk Download Kutools for Excel dan uji coba gratis Sekarang!
Pisahkan data menjadi beberapa lembar kerja berdasarkan kolom dengan Kutools for Excel
Kutools for Excel mencakup lebih dari 300 alat Excel yang praktis. Gratis untuk mencoba tanpa batasan dalam 30 hari. Unduh uji coba gratis sekarang!
Artikel terkait:
Bagaimana cara membagi data menjadi beberapa lembar kerja dengan jumlah baris?
Alat Produktivitas Kantor Terbaik
Tingkatkan Keterampilan Excel Anda dengan Kutools for Excel, dan Rasakan Efisiensi yang Belum Pernah Ada Sebelumnya. Kutools for Excel Menawarkan Lebih dari 300 Fitur Canggih untuk Meningkatkan Produktivitas dan Menghemat Waktu. Klik Di Sini untuk Mendapatkan Fitur yang Paling Anda Butuhkan...
Office Tab Menghadirkan antarmuka Tab ke Office, dan Membuat Pekerjaan Anda 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!















