Ana içeriğe atla

Excel'de olası tüm kombinasyonları nasıl listeleyebilirim veya oluşturabilirim?

Diyelim ki, aşağıdaki iki veri sütununa sahibim ve şimdi, gösterilen sol ekran görüntüsü gibi iki değer listesine dayalı olarak tüm olası kombinasyonların bir listesini oluşturmak istiyorum. Belki, az sayıda değer varsa tüm kombinasyonları tek tek listeleyebilirsiniz, ancak olası kombinasyonların listelenmesi gereken birden çok değer içeren birkaç sütun varsa, işte bazı hızlı püf noktaları Excel'de bu sorunu çözmenize yardımcı olabilir. .

Formülü olan iki listeden tüm olası kombinasyonları listeleyin veya oluşturun

VBA kodu ile üç veya daha fazla listeden tüm olası kombinasyonları listeleyin veya oluşturun

Güçlü bir özellikle birden fazla listeden tüm olası kombinasyonları listeleyin veya oluşturun


Formülü olan iki listeden tüm olası kombinasyonları listeleyin veya oluşturun

Aşağıdaki uzun formül, iki liste değerinin tüm olası kombinasyonlarını hızlı bir şekilde listelemenize yardımcı olabilir, lütfen aşağıdaki işlemleri gerçekleştirin:

1. Aşağıdaki formülü boş bir hücreye girin veya kopyalayın, bu durumda onu D2 hücresine gireceğim ve sonra Keşfet sonucu almak için anahtar, ekran görüntüsüne bakın:

=IF(ROW()-ROW($D$2)+1>COUNTA($A$2:$A$5)*COUNTA($B$2:$B$4),"",INDEX($A$2:$A$5,INT((ROW()-ROW($D$2))/COUNTA($B$2:$B$4)+1))&"-"&INDEX($B$2:$B$4,MOD(ROW()-ROW($D$2),COUNTA($B$2:$B$4))+1))

not: Yukarıdaki formülde, $ A $ 2: $ A $ 5 ilk sütun değerlerinin aralığıdır ve 2 $ B $: 4 B $ olası tüm kombinasyonlarını listelemek istediğiniz ikinci liste değerlerinin aralığıdır, $ D $ 2 formülü koyduğunuz hücredir, hücre referanslarını ihtiyacınıza göre değiştirebilirsiniz.

2. Sonra D2 hücresini seçin ve boş hücreler elde edilene kadar doldurma tutamacını hücrelere doğru sürükleyin; tüm olası kombinasyonlar iki liste değerine göre listelenmiştir. Ekran görüntüsüne bakın:


VBA kodu ile üç veya daha fazla listeden tüm olası kombinasyonları listeleyin veya oluşturun

Belki yukarıdaki formülü uygulamak sizin için biraz zordur, birden fazla sütun verisi varsa, değiştirmek zahmetli olacaktır. Burada, hızlı bir şekilde başa çıkmak için bir VBA kodu tanıtacağım.

1. Basılı tutun ALT + F11 tuşlarını açmak için Uygulamalar için Microsoft Visual Basic pencere.

2. tıklayın Ekle > modülve aşağıdaki kodu modül Pencere.

VBA kodu: 3 veya birden çok sütunun tüm kombinasyonlarını oluşturun

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:A5")  'First column data
Set xDRg2 = Range("B2:B4")  'Second column data
Set xDRg3 = Range("C2:C4")  '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
not: Yukarıdaki kodda, A2: A5, B2: B4, C2: C4 kullanmak istediğiniz veri aralığı, E2 sonuçları bulmak istediğiniz çıktı hücresidir. Daha fazla sütunun tüm kombinasyonlarını elde etmek istiyorsanız, lütfen ihtiyaç duyduğunuzda diğer parametreleri değiştirin ve koda ekleyin.

3. Ardından, F5 Bu kodu çalıştırmak için anahtar ve 3 sütunun tüm kombinasyonları aynı anda oluşturulacaktır, ekran görüntüsüne bakın:


Güçlü bir özellikle birden fazla listeden tüm olası kombinasyonları listeleyin veya oluşturun

Birden fazla liste değeri varsa, olası kombinasyonların listelenmesi gerekiyorsa, kodu değiştirmeniz sizin için zor olabilir. Burada güçlü bir araç önerebilirim - Kutools for Excelkullanışlı bir özellik içerir Tüm Kombinasyonları Listele Bu, verilen veri listelerine göre tüm olası kombinasyonları hızlı bir şekilde listeleyebilir.

İpuçları:Bunu uygulamak için Tüm Kombinasyonları Listele özelliği, öncelikle indirmelisiniz Kutools for Excelve ardından özelliği hızlı ve kolay bir şekilde uygulayın.

Kurduktan sonra Kutools for Excellütfen şunu yapın:

1. Tıkla Kutools > Ekle > Tüm Kombinasyonları Listele, ekran görüntüsüne bakın:

2. In Tüm Kombinasyonları Listele iletişim kutusu, aşağıda gösterilen demo gibi işlemleri yapın:

3. Ardından, belirtilen tüm değerler ve ayırıcılar iletişim kutusunda listelenmiştir, ekran görüntüsüne bakın:

4Ve sonra tıklayın Ok düğmesi ve sonucu çıkarmak için bir hücre seçmenizi hatırlatan bir istem kutusu açılır, ekran görüntüsüne bakın:

5. tıklayın OK, verilen listelere dayalı tüm olası kombinasyonlar, aşağıda gösterilen ekran görüntüsü gibi çalışma sayfasında oluşturulmuştur:

Kutools for Excel'i Şimdi İndirmek İçin Tıklayın!


Daha ilgili makaleler:

  • Verilen Bir Toplama Eşit Olan Tüm Kombinasyonları Bulun
  • Örneğin, aşağıdaki sayılar listesine sahibim ve şimdi listedeki sayıların hangi kombinasyonunun toplamının 480 olduğunu bilmek istiyorum, gösterilen aşağıdaki ekran görüntüsünde, toplamı eşit olan beş olası kombinasyon grubu olduğunu görebilirsiniz. 480, örneğin 300 + 60 + 120, 300 + 60 + 40 + 80, vb. Bu yazıda, Excel'de hangi hücrelerin belirli bir değere sahip olduğunu bulmak için bazı yöntemler hakkında konuşacağım.
  • Olası Tüm Permütasyonları Oluştur veya Listeleme
  • Örneğin, üç karakterim var XYZ, şimdi, şu şekilde altı farklı sonuç elde etmek için bu üç karaktere dayalı tüm olası permütasyonları listelemek istiyorum: XYZ, XZY, YXZ, YZX, ZXY ve ZYX. Excel'de, tüm permütasyonları farklı karakter sayılarına göre nasıl hızlı bir şekilde oluşturabilir veya listeleyebilirsiniz?
  • Tüm Olası 4 Haneli Kombinasyonların Bir Listesini Oluşturun
  • Bazı durumlarda, 4 ile 0 arasındaki tüm olası 9 basamaklı kombinasyonların bir listesini oluşturmamız gerekebilir, bu da 0000, 0001, 0002… 9999'luk bir liste oluşturmak anlamına gelir. Excel'de liste görevini hızlı bir şekilde çözmek için size bazı hileler sunuyorum.

 

En İyi Ofis Üretkenlik Araçları

🤖 Kutools AI Yardımcısı: Aşağıdakilere dayalı olarak veri analizinde devrim yaratın: Akıllı Yürütme   |  Kodunu oluşturun  |  Özel Formüller Oluşturun  |  Verileri Analiz Edin ve Grafikler Oluşturun  |  Kutools İşlevlerini Çağır...
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya Tanımla   |  Boş Satırları Sil   |  Veri Kaybı Olmadan Sütunları veya Hücreleri Birleştirin   |   Formülsüz Tur ...
Süper Arama: Çoklu Ölçütlü VLookup    Çoklu Değer VLookup  |   Birden Çok Sayfada VLookup   |   Bulanık Arama ....
Gelişmiş Açılır Liste: Hızla Açılır Liste Oluşturun   |  Bağımlı Açılır Liste   |  Çoklu Seçim Açılır Liste ....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekleme  |  Sütunları Taşı  |  Gizli Sütunların Görünürlük Durumunu Değiştir  |  Aralıkları ve Sütunları Karşılaştırın ...
Öne Çıkan Özellikler: Izgara Odağı   |  Tasarım görünümü   |   Büyük Formül Çubuğu    Çalışma Kitabı ve Sayfa Yöneticisi   |  Kaynak Kütüphanesi (Otomatik metin)   |  Tarih Seçici   |  Çalışma Sayfalarını Birleştirin   |  Hücreleri Şifrele/Şifresini Çöz    E-postaları Listeye Göre Gönder   |  Süper Filtre   |   Özel Filtre (kalın/italik/üstü çizili filtre...) ...
En İyi 15 Araç Seti12 Metin Tools (Metin ekle, Karakterleri Kaldır, ...)   |   50+ Grafik Türleri (Gantt şeması, ...)   |   40+ Pratik Formüller (Yaşı doğum gününe göre hesapla, ...)   |   19 sokma Tools (QR Kodunu Girin, Yoldan Resim Ekle, ...)   |   12 Dönüştürme Tools (Sayılardan Kelimelere, Para Birimi Dönüştürme, ...)   |   7 Birleştir ve Böl Tools (Gelişmiş Kombine Satırları, Bölünmüş hücreler, ...)   |   ... ve dahası

Kutools for Excel ile Excel Becerilerinizi Güçlendirin ve Daha Önce Hiç Olmadığı Gibi Verimliliği Deneyimleyin. Kutools for Excel, Üretkenliği Artırmak ve Zamandan Tasarruf Etmek için 300'den Fazla Gelişmiş Özellik Sunar.  En Çok İhtiyacınız Olan Özelliği Almak İçin Buraya Tıklayın...

Açıklama


Office Tab, Office'e Sekmeli Arayüz Getirir ve İşinizi Çok Daha Kolay Hale Getirir

  • Word, Excel, PowerPoint'te sekmeli düzenlemeyi ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
  • Yeni pencereler yerine aynı pencerenin yeni sekmelerinde birden çok belge açın ve oluşturun.
  • Üretkenliğinizi% 50 artırır ve her gün sizin için yüzlerce fare tıklamasını azaltır!

 

Comments (42)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
como que poderia gerar uma lista de combinações de nomes no LibreOffice?
Rated 5 out of 5
This comment was minimized by the moderator on the site
Hello, Johansson

Sorry, the methods in this article are only applied for Microsoft Excel.
Thank you!
This comment was minimized by the moderator on the site
Hej alle sammen

Jeg håber at i kan hjælpe med dette.

Jeg har en af de gamle Bastalåse kodelåse med 6 knapper, hvor man kan trykke knapperne ind, lade dem være i neutral eller trække dem ud.

Låsen var åben da jeg købte den, så jeg låste den i håb om at jeg kunne gå kombinationerne igennem.

Men jeg har lidt problemer med at få nedskrevet samtlige kombinationer (729 så vidt jeg kan regne ud).

Er der en der vil hjælpe mig med med dette? Evt. kan man kalde de 3 indstillingsmuligheder pr. knap for: 1-2-3, 1-0-2, eller I-N-U (ind-neutral-ud).


Krydser finger og siger på forhånd mange tak hvis jeg kan få låsen op, det er sådan lidt nostalgi.

Mvh

Nicolaj
This comment was minimized by the moderator on the site
No 1º Exemplo de captura de tela , está faltando em All combinations Jan - KTE
This comment was minimized by the moderator on the site
Hello friend,
How are you. Thank you for your notice. We changed the first ficture. Please check now. Have a nice day.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
Hi,
I have a project with excel (including Kutools) that I am stuck on.
Can anyone tell me how to get a list of all combinations of 6 different numbers, without repeating any of the numbers?
I know there should be 6! = 720 combinations but I need the list.
Thanks
This comment was minimized by the moderator on the site
Hi,
I have a project with excel (including Kutools) that I am stuck on.
Can anyone tell me how to get a list of all combinations of 6 different numbers, without repeating any digit?
I know there should be 6! = 720 combinations but I need the list.
Thanks
This comment was minimized by the moderator on the site
Hello Extend Office,
I want to extend the VBA code in "List Or Generate All Possible Combinations From Three Or More Lists With VBA Code article"
I want to show only the one's whose total of the combinations is equal to 9. Can you please show the additional extension/lines in the code? sorry, I'm barely new in VBA.
For example, I only want to show the combinations like the following:
1-2-2-2-2 (this is equal to 1+2+2+2+2 = 9) so, it will show the ones whose total is 9, the rest won't show.
1-2-3-1-3 (=9)
1-3-2-1-2 (=9) and so on...

Thanks very much for your help
Dalesimplest.becky15.08.21

This comment was minimized by the moderator on the site
edited formula to randomize 5 columns instead of 3 but still wont work,why?
Sub ListAllCombinations()
'Updateby Extendoffice
Dim xDRg1, xDRg2, xDRg3, xDRg4, xDRg5 As Range
Dim xRg As Range
Dim xStr As String
Dim xFN1, xFN2, xFN3, xFN4, xF5 As Integer
Dim xSV1, xSV2, xSV3, xSV4, xSV5 As String
Set xDRg1 = Range("A2:A10") 'First column data
Set xDRg2 = Range("B2:B10") 'Second column data
Set xDRg3 = Range("C2:C10") 'Third column data
Set xDRg2 = Range("D2:D10") 'Fourth column data
Set xDRg3 = Range("E2:E10") 'Fifth column data
xStr = "," 'Separator
Set xRg = Range("G2") '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
For xFN4 = 1 To xDRg4.Count
xSV4 = xDRg4.Item(xFN4).Text
For xFN5 = 1 To xDRg5.Count
xSV5 = xDRg5.Item(xFN5).Text
xRg.Value = xSV1 & xStr & xSV2 & xStr & xSV3 & xStr & xSV4 & xStr & xSV5
Set xRg = xRg.Offset(1, 0)
Next
Next
Next
End Sub
This comment was minimized by the moderator on the site
Hello, jericho,You should modify your code as below code, please try it, thank you!<div data-tag="code">Sub ListAllCombinations()
'Updateby Extendoffice
Dim xDRg1, xDRg2, xDRg3, xDRg4, xDRg5 As Range
Dim xRg As Range
Dim xStr As String
Dim xFN1, xFN2, xFN3, xFN4, xFN5 As Integer
Dim xSV1, xSV2, xSV3, xSV4, xSV5 As String
Set xDRg1 = Range("A2:A10") 'First column data
Set xDRg2 = Range("B2:B10") 'Second column data
Set xDRg3 = Range("C2:C10") 'Third column data
Set xDRg4 = Range("D2:D10") 'Fourth column data
Set xDRg5 = Range("E2:E10") 'Fifth column data
xStr = "-" 'Separator
Set xRg = Range("H2") '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
For xFN4 = 1 To xDRg4.Count
xSV4 = xDRg4.Item(xFN4).Text
For xFN5 = 1 To xDRg5.Count
xSV5 = xDRg5.Item(xFN5).Text
xRg.Value = xSV1 & xStr & xSV2 & xStr & xSV3 & xStr & xSV4 & xStr & xSV5
Set xRg = xRg.Offset(1, 0)
Next
Next
Next
Next
Next
End Sub
This comment was minimized by the moderator on the site
How to remove the repetition if I have color 1, color 2, color 3 in different orders(i.e. color2, color 3, color 1) but they are the same for my need? tks!
This comment was minimized by the moderator on the site
Excelentes soluciones, muchas gracias, lo logré con Kutools
This comment was minimized by the moderator on the site
NON FUNZIONA. HO SEGUITO GLI STESSI PASSAGGI MA MI DICE CHE C'E' UN ERRORE
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations