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

Bagaimana cara menghasilkan semua kombinasi 3 atau beberapa kolom di Excel?

Misalkan, saya memiliki 3 kolom data, sekarang, saya ingin membuat atau mencantumkan semua kombinasi data dalam 3 kolom ini seperti gambar di bawah ini. Apakah Anda memiliki metode yang bagus untuk menyelesaikan tugas ini di Excel?

Hasilkan semua kombinasi berdasarkan 3 kolom data dengan menggunakan rumus

Hasilkan semua kombinasi berdasarkan 3 atau beberapa kolom data dengan menggunakan kode VBA

Hasilkan semua kombinasi berdasarkan 3 atau beberapa kolom data dengan menggunakan fitur yang mengagumkan


Hasilkan semua kombinasi berdasarkan 3 kolom data dengan menggunakan rumus

Rumus panjang berikut ini dapat membantu untuk membuat daftar semua kombinasi dari 3 kolom, lakukan seperti ini:

1. Silakan, klik sel tempat untuk menampilkan hasilnya, lalu salin dan tempel rumus di bawah ini ke dalamnya:

=IFERROR(INDEX($A$2:$A$4,INT((ROW(1:1)-1)/((COUNTA($B$2:$B$6)*(COUNTA($C$2:$C$5)))))+1)&"-"&INDEX($B$2:$B$6,MOD(INT((ROW(1:1)-1)/COUNTA($C$2:$C$5)),COUNTA($B$2:$B$6))+1)&"-"&INDEX($C$2:$C$5,MOD((ROW(1:1)-1),COUNTA($C$2:$C$5))+1),"")

Note: Dalam rumus ini: A2: A4, B2: B6, C2: C5 adalah rentang data yang ingin Anda gunakan.

2. Kemudian, seret gagang isian ke sel sampai sel kosong ditampilkan, itu berarti, semua kombinasi dari 3 kolom telah terdaftar, lihat tangkapan layar


Hasilkan semua kombinasi berdasarkan 3 atau beberapa kolom data dengan menggunakan kode VBA

Rumus panjang di atas agak sulit untuk digunakan, jika ada banyak data kolom yang perlu digunakan, akan merepotkan untuk dimodifikasi. Di sini, saya akan memperkenalkan kode VBA untuk mengatasinya dengan cepat.

1. Tahan ALT + F11 kunci untuk membuka Microsoft Visual Basic untuk Aplikasi jendela.

2. Klik Menyisipkan > Modul, dan tempel kode berikut di Module Window.

Kode VBA: Menghasilkan semua kombinasi dari 3 atau beberapa kolom

Sub ListAllCombinations()
'Updateby Extendoffice
Dim xDRg1, xDRg2, xDRg3 As Range
Dim xRg  As Range
Dim xStr As String
Dim xFN1, xFN2, xFN3 As Integer
Dim xSV1, xSV2, xSV3 As String
Set xDRg1 = Range("A2:A4")  'First column data
Set xDRg2 = Range("B2:B6")  'Second column data
Set xDRg3 = Range("C2:C5")  'Third column data
xStr = "-"   'Separator
Set xRg = Range("E2")  'Output cell
For xFN1 = 1 To xDRg1.Count
    xSV1 = xDRg1.Item(xFN1).Text
    For xFN2 = 1 To xDRg2.Count
        xSV2 = xDRg2.Item(xFN2).Text
      For xFN3 = 1 To xDRg3.Count
        xSV3 = xDRg3.Item(xFN3).Text
        xRg.Value = xSV1 & xStr & xSV2 & xStr & xSV3
        Set xRg = xRg.Offset(1, 0)
       Next
    Next
Next
End Sub

Note: Pada kode di atas, A2: A4, B2: B6, C2: C5 adalah rentang data yang ingin Anda gunakan, E2 adalah sel keluaran yang ingin Anda temukan hasilnya. Jika Anda ingin mendapatkan semua kombinasi dari lebih banyak kolom, harap ubah dan tambahkan parameter lain ke kode sesuai kebutuhan Anda.

3. Lalu tekan F5 kunci untuk menjalankan kode ini, dan semua kombinasi dari 3 atau beberapa kolom akan dibuat sekaligus, lihat tangkapan layar:


Hasilkan semua kombinasi berdasarkan 3 atau beberapa kolom data dengan menggunakan fitur yang mengagumkan

Jika Anda memiliki Kutools untuk Excel, dengan kekuatannya Cantumkan Semua Kombinasi fitur, Anda dapat membuat daftar semua kombinasi beberapa kolom dengan cepat dan mudah.

Tips:Untuk menerapkan ini Cantumkan Semua Kombinasi fitur, pertama, Anda harus mengunduh Kutools untuk Excel, lalu terapkan fitur dengan cepat dan mudah.

Setelah menginstal Kutools untuk Excel, lakukan seperti ini:

1. Klik Kutools > Menyisipkan > Cantumkan Semua Kombinasi, lihat tangkapan layar:

2. di Cantumkan Semua Kombinasi kotak dialog, tentukan data kolom dan pemisah untuk daftar kombinasi seperti gambar berikut yang ditampilkan:

3. Setelah mengatur data dan pemisah, lalu klik Ok tombol, di kotak prompt berikutnya, pilih sel untuk menemukan hasilnya, lihat tangkapan layar:

4. Dan kemudian, klik OK tombol, semua kombinasi telah dibuat segera seperti gambar di bawah ini yang ditampilkan:

Klik untuk Mengunduh Kutools for Excel dan uji coba gratis Sekarang!


  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom dan Menyimpan Data; Pisahkan Konten Sel; Gabungkan Baris Duplikat dan Jumlah / Rata-rata... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Favorit dan Sisipkan Rumus dengan Cepat, Rentang, Grafik dan Gambar; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Pengelompokan Tabel Pivot menurut nomor minggu, hari dalam seminggu dan banyak lagi ... Tampilkan Sel yang Tidak Terkunci dan Terkunci dengan warna berbeda; Sorot Sel Yang Memiliki Rumus / Nama...
tab kte 201905
  • 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!
officetab bawah
Urutkan komentar berdasarkan
komentar (17)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
Untuk menghasilkan kombinasi acak apa pun yang dapat kita gunakan
=INDEX($A$2:$A$4,RANDBETWEEN(1,3))&"-"&INDEX($B$2:$B$6,RANDBETWEEN(1,5))&"-"&INDEX($C$2:$C$5,RANDBETWEEN(1,4))
Komentar ini diminimalkan oleh moderator di situs
Terima kasih banyak untuk berbagi posting ini. Terima kasih banyak kepada @Balaji untuk formulanya
Komentar ini diminimalkan oleh moderator di situs
AKU TIDAK BISA TERIMA KASIH CUKUP! MENYELAMATKAN SAYA BANYAK WAKTU!
Komentar ini diminimalkan oleh moderator di situs
Bagaimana cara mengerjakan rumus di bawah ini untuk 5 kolom? Mencoba mencari tahu tetapi memberikan kesalahan
=IFERROR(INDEX($A$2:$A$4,INT((ROW(1:1)-1)/((COUNTA($B$2:$B$6)*(COUNTA($C$2:$C$5)))))+1)&"-"&INDEX($B$2:$B$6,MOD(INT((ROW(1:1)-1)/COUNTA($C$2:$C$5)),COUNTA($B$2:$B$6))+1)&"-"&INDEX($C$2:$C$5,MOD((ROW(1:1)-1),COUNTA($C$2:$C$5))+1),"")
Komentar ini diminimalkan oleh moderator di situs
Halo Nikhil,Untuk mendapatkan semua kombinasi dari 5 kolom, mungkin kode VBA di bawah ini dapat membantu Anda, silakan ubah referensi sel ke data Anda.
Sub DaftarSemuaKombinasi()
'Perbarui oleh Extendoffice
Redupkan xDRg1, xDRg2, xDRg3, xDRg4, xDRg5 Sebagai Rentang
Redupkan xRg Sebagai Rentang
Redupkan xStr Sebagai String
Redupkan xFN1, xFN2, xFN3, xFN4, xFN5 Sebagai Bilangan Bulat
Redupkan xSV1, xSV2, xSV3, xSV4, xSV5 Sebagai String
Setel xDRg1 = Range("A2:A7") 'Data kolom pertama
Setel xDRg2 = Range("B2:B7") 'Data kolom kedua
Setel xDRg3 = Range("C2:C7") 'Data kolom ketiga
Setel xDRg4 = Range("D2:D7") 'Data kolom keempat
Setel xDRg5 = Range("E2:E7") 'Data kolom kelima
xStr = "-" 'Pemisah
Atur xRg = Range("H2") 'Sel keluaran
Untuk xFN1 = 1 Ke xDRg1.Count
xSV1 = xDRg1.Item(xFN1).Teks
Untuk xFN2 = 1 Ke xDRg2.Count
xSV2 = xDRg2.Item(xFN2).Teks
Untuk xFN3 = 1 Ke xDRg3.Count
xSV3 = xDRg3.Item(xFN3).Teks
Untuk xFN4 = 1 Ke xDRg4.Count
xSV4 = xDRg4.Item(xFN4).Teks
Untuk xFN5 = 1 Ke xDRg5.Count
xSV5 = xDRg5.Item(xFN5).Teks
xRg.Nilai = xSV1 & xStr & xSV2 & xStr & xSV3 & xStr & xSV4 & xStr & xSV5
Tetapkan xRg = xRg.Offset(1, 0)
Next
Next
Next
Next
Next
End SubSilakan dicoba, semoga bisa membantu Anda!
Komentar ini diminimalkan oleh moderator di situs
Halo skyyang, saya mengubah kode untuk 7 gulungan, tetapi melihat Excel hanya memiliki 1,048,576 baris, kode VBA tidak dapat memberikan semua kombinasi. Apakah Anda tahu bagaimana saya bisa melanjutkan di kolom lain? Saya pikir kode ini - Set xRg = xRg.Offset(1, 0)perlu diubah
Komentar ini diminimalkan oleh moderator di situs
Halo skyyang, saya mengubah kode untuk 7 gulungan, tetapi melihat Excel hanya memiliki 1,048,576 baris, kode VBA tidak dapat memberikan semua kombinasi.
Apakah Anda punya ide bagaimana saya bisa melanjutkan di kolom lain?
Saya pikir kode ini - Set xRg = xRg.Offset(1, 0)
diperlukan untuk berubah 
Komentar ini diminimalkan oleh moderator di situs
=IFERROR(INDEX($A$2:$A$5,INT((ROW(1:1)-1)/((COUNTA($B$2:$B$3)*(COUNTA($C$2:$C$3)* (COUNTA($D$2:$D$4)* (COUNTA($E$2:$E$6)* (COUNTA($H$2:$H$6)* (COUNTA($G$2:$G$6)* (COUNTA($H$2:$H$6))))))))))+1)&"-"&INDEX($B$2:$B$3,MOD(INT((ROW(1:1)-1)/COUNTA($C$2:$C$3)),COUNTA($B$2:$B$3))+1)&"-" &INDEX($C$2:$C$3,MOD(INT((ROW(1:1)-1)/COUNTA($D$2:$D$4)),COUNTA($C$2:$C$3))+1)&"-" &INDEX($D$2:$D$4,MOD(INT((ROW(1:1)-1)/COUNTA($E$2:$E$6)),COUNTA($D$2:$D$4))+1)&"-" &INDEX($E$2:$E$6,MOD(INT((ROW(1:1)-1)/COUNTA($F$2:$F$6)),COUNTA($E$2:$E$6))+1)&"-" &INDEX($F$2:$F$6,MOD(INT((ROW(1:1)-1)/COUNTA($G$2:$G$6)),COUNTA($F$2:$F$6))+1)&"-" &INDEX($G$2:$G$6,MOD(INT((ROW(1:1)-1)/COUNTA($H$2:$H$6)),COUNTA($G$2:$G$6))+1)&"-"&INDEX($H$2:$H$6,MOD((ROW(1:1)-1),COUNTA($H$2:$H$6))+1),"")
Komentar ini diminimalkan oleh moderator di situs
saya butuh rumus ini untuk 4 kolom
Komentar ini diminimalkan oleh moderator di situs
Terima kasih banyak. Persis apa yang saya butuhkan :-)))
Komentar ini diminimalkan oleh moderator di situs
Terima kasih banyak untuk kode ini. Saya telah memodifikasi kode untuk jumlah kolom yang saya butuhkan (25). Terima kasih,
Komentar ini diminimalkan oleh moderator di situs
HiIn kode VBA saya menggunakan empat kolom dan rentang kolom adalah E2:E75, B2:B267, C2:C195 & D2:D267. Kisaran keluaran adalah J2. Dalam hal ini hasil out put melebihi batas baris. Tolong bantu untuk memecahkan kesalahan
Komentar ini diminimalkan oleh moderator di situs
Halo Jadi ini adalah kode untuk 9 kolom :')
Sub DaftarSemuaKombinasi()
'Perbarui oleh Extendoffice
Redupkan xDRg1, xDRg2, xDRg3, xDRg4, xDRg5, xDRg6, xDRg7, xDRg8, xDRg9 Sebagai Rentang
Redupkan xRg Sebagai Rentang
Redupkan xStr Sebagai String
Redupkan xFN1, xFN2, xFN3, xFN4, xFN5, xFN6, xFN7, xFN8, xFN9 Sebagai Bilangan Bulat
Redupkan xSV1, xSV2, xSV3, xSV4, xSV5, xSV6, xSV7, xSV8, xSV9 Sebagai String
Setel xDRg1 = Range("A2:A3") 'Data kolom pertama
Setel xDRg2 = Range("B2:B3") 'Data kolom kedua
Setel xDRg3 = Range("C2:C10") 'Data kolom ketiga
Setel xDRg4 = Range("D2:D2") 'Data kolom ketiga
Setel xDRg5 = Range("E2:E3") 'Data kolom ketiga
Setel xDRg6 = Range("F2:F3") 'Data kolom ketiga
Setel xDRg7 = Range("G2:G4") 'Data kolom ketiga
Setel xDRg8 = Range("H2:H3") 'Data kolom ketiga
Setel xDRg9 = Range("I2:I3") 'Data kolom ketiga
xStr = "-" 'Pemisah
Atur xRg = Range("K2") 'Sel keluaran
Untuk xFN1 = 1 Ke xDRg1.Count
xSV1 = xDRg1.Item(xFN1).Teks
Untuk xFN2 = 1 Ke xDRg2.Count
xSV2 = xDRg2.Item(xFN2).Teks
Untuk xFN3 = 1 Ke xDRg3.Count
xSV3 = xDRg3.Item(xFN3).Teks
Untuk xFN4 = 1 Ke xDRg4.Count
xSV4 = xDRg4.Item(xFN4).Teks
Untuk xFN5 = 1 Ke xDRg5.Count
xSV5 = xDRg5.Item(xFN5).Teks
Untuk xFN6 = 1 Ke xDRg6.Count
xSV6 = xDRg6.Item(xFN6).Teks
Untuk xFN7 = 1 Ke xDRg7.Count
xSV7 = xDRg7.Item(xFN7).Teks
Untuk xFN8 = 1 Ke xDRg8.Count
xSV8 = xDRg8.Item(xFN8).Teks
Untuk xFN9 = 1 Ke xDRg9.Count
xSV9 = xDRg9.Item(xFN9).Teks
xRg.Nilai = xSV1 & xStr & xSV2 & xStr & xSV3 & xStr & xSV4 & xStr & xSV5 & xStr & xSV6 & xStr & xSV7 & xStr & xSV8 & xStr & xSV9
Tetapkan xRg = xRg.Offset(1, 0)
Next
Next
Next
Next
Next
Next
Next
Next
Next
End Sub
Komentar ini diminimalkan oleh moderator di situs
"단어-단어-단어" .
"단어"가 ,
?

'VBA : 3 ' .

"1-1-1"

-1 .
Komentar ini diminimalkan oleh moderator di situs
Bonjour, comment faire pour que chaque valeurs soient placees dans une colonne differente en non séparées par un Tiret ?
Komentar ini diminimalkan oleh moderator di situs
Esse código me ajudou bastante e kombinasi item de cada coluna entre elas. Mas também preciso combinar dois itens de cada coluna, sem repetição. Alguém poderia me ajudar nisso?
Komentar ini diminimalkan oleh moderator di situs
Esse código me ajudou bastante e kombinasi item de cada coluna entre elas. Mas também preciso combinar dois itens de cada coluna, sem repetição. Alguém poderia me ajudar nisso?
Belum ada komentar yang diposting di sini
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL