Přejít k hlavnímu obsahu

Jak vypsat nebo vygenerovat všechny možné kombinace v aplikaci Excel?

Autor: Xiaoyang Naposledy změněno: 2025-04-17
Snímek obrazovky s příkladem dvou datových sloupců pro generování kombinací v Excelu

Při práci s daty v Excelu můžete narazit na situace, kdy potřebujete vygenerovat všechny možné kombinace z více seznamů. Pokud máte například dva nebo více sloupců hodnot, ruční vypisování každé kombinace může být zdlouhavé a náchylné k chybám, zvláště když počet hodnot roste. V této příručce prozkoumáme různé techniky pro rychlý seznam nebo generování všech možných kombinací v Excelu.

Seznamujte nebo generujte všechny možné kombinace ze dvou seznamů pomocí vzorce

Seznamujte nebo generujte všechny možné kombinace ze tří nebo více seznamů pomocí kódu VBA

Vypište nebo vygenerujte všechny možné kombinace z více seznamů pomocí Kutools for Excel


Seznamujte nebo generujte všechny možné kombinace ze dvou seznamů pomocí vzorce

Následující dlouhý vzorec vám pomůže rychle vypsat všechny možné kombinace hodnot dvou seznamů, postupujte takto:

1. Zadejte nebo zkopírujte níže uvedený vzorec do prázdné buňky, v tomto případě jej vložím do buňky D2 a poté stisknutím klávesy "Enter" získáte výsledek, viz snímek obrazovky:

=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))

Poznámka: Ve výše uvedeném vzorci je „$A$2:$A$5“ rozsah hodnot prvního sloupce a „$B$2:$B$4“ je rozsah hodnot druhého seznamu, ve kterém chcete uvést všechny jejich možné kombinace, „$D$2“ je buňka, do které vložíte vzorec, odkazy na buňky můžete změnit podle potřeby.

2. Poté vyberte buňku D2 a přetáhněte úchyt výplně dolů, dokud se neobjeví prázdné buňky. Všechny možné kombinace budou uvedeny na základě dvou seznamů hodnot. Viz snímek obrazovky:


Seznamujte nebo generujte všechny možné kombinace ze tří nebo více seznamů pomocí kódu VBA

Pokud je použití výše uvedeného vzorce obtížné, zejména u více sloupců dat, může být jeho úprava náročná. V takových případech poskytuje kód VBA rychlejší a flexibilnější řešení.

1. Podržením kláves "ALT + F11" otevřete okno "Microsoft Visual Basic for Applications".

2. Klikněte na "Vložit" > "Modul" a vložte následující kód do okna "Modul".

Kód VBA: Vygenerujte všechny kombinace 3 nebo více sloupců

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
Poznámka: Ve výše uvedeném kódu jsou "A2:A5", "B2:B4", "C2:C4" rozsah dat, který chcete použít, "E2" je výstupní buňka, ve které chcete najít výsledky. Pokud chcete získat všechny kombinace více sloupců, změňte a přidejte do kódu další parametry podle potřeby.

3. Poté stisknutím klávesy „F5“ spusťte tento kód a všechny kombinace 3 sloupců budou vygenerovány najednou, viz snímek obrazovky:

Snímek obrazovky zobrazující všechny možné kombinace generované ze tří nebo více seznamů pomocí VBA


Vypište nebo vygenerujte všechny možné kombinace z více seznamů pomocí Kutools for Excel

Pokud existuje více seznamů hodnot, které musí obsahovat všechny možné kombinace, může být pro vás obtížné upravit kód. Zde mohu doporučit výkonný nástroj - "Kutools for Excel", obsahuje praktickou funkci "Vypsat všechny kombinace", která dokáže rychle vypsat všechny možné kombinace na základě zadaných seznamů dat.

Kutools for Excel nabízí více než 300 pokročilých funkcí pro zefektivnění složitých úkolů, zvýšení kreativity a efektivity. Itegarujte se schopnostmi AI, Kutools automatizuje úkoly s přesností, čímž usnadňuje správu dat. Podrobné informace o Kutools for Excel...         Zkušební verze zdarma...

1. Klikněte na „Kutools„> Vložit“ > „Vypsat všechny kombinace“, viz snímek obrazovky:

2. V dialogovém okně "Seznam všech kombinací" proveďte operace, jak je ukázáno níže:

3. Poté byly všechny zadané hodnoty a oddělovače uvedeny v dialogovém okně, viz snímek obrazovky:

Snímek obrazovky zobrazující zadané hodnoty a oddělovače uvedené v dialogovém okně

4. A poté klikněte na tlačítko "OK" a objeví se okno s výzvou, které vám připomene, že vyberete buňku pro výstup výsledku, viz snímek obrazovky:

Snímek obrazovky s výzvou k výběru výstupní buňky pro kombinace

5. Klikněte na „OK“, všechny možné kombinace založené na daných seznamech byly vygenerovány do listu, jak je znázorněno na následujícím snímku obrazovky:

Snímek obrazovky zobrazující všechny možné kombinace vygenerované ze tří nebo více seznamů

Kutools for Excel - Supercharge Excel s více než 300 základními nástroji. Užijte si trvale bezplatné funkce AI! Get It Now


Více relativních článků:

  • Generujte všechny kombinace 3 nebo více sloupců
  • Předpokládejme, že mám 3 sloupce dat, teď chci generovat nebo vypsat všechny kombinace dat v těchto 3 sloupcích, jak je uvedeno níže. Máte nějaké dobré metody pro řešení tohoto úkolu v aplikaci Excel?
  • Najděte všechny kombinace, které se rovnají dané sumě
  • Například mám následující seznam čísel a teď chci vědět, která kombinace čísel v seznamu sečte až 480, na následujícím zobrazeném snímku obrazovky můžete vidět, že existuje pět skupin možných kombinací, které přidávají stejné na 480, například 300 + 60 + 120, 300 + 60 + 40 + 80 atd. V tomto článku budu hovořit o některých metodách, jak zjistit, které buňky sečtou určitou hodnotu v aplikaci Excel.
  • Vygenerujte nebo vypsejte všechny možné permutace
  • Například mám tři znaky XYZ, teď chci vypsat všechny možné permutace založené na těchto třech znacích, abych získal šest různých výsledků takto: XYZ, XZY, YXZ, YZX, ZXY a ZYX. Jak můžete v aplikaci Excel rychle vygenerovat nebo vypsat všechny permutace na základě různého počtu znaků?
  • Vytvořte seznam všech možných čtyřmístných kombinací
  • V některých případech možná budeme muset vygenerovat seznam všech možných čtyřmístných kombinací čísel 4 až 0, což znamená vygenerovat seznam 9, 0000, 0001 ... 0002. Abych rychle vyřešil úlohu seznamu v aplikaci Excel, představuji vám několik triků.

Nejlepší nástroje pro produktivitu v kanceláři

🤖 Kutools AI asistent: Revoluční analýza dat založená na: Inteligentní provedení   |  Generovat kód  |  Vytvořte vlastní vzorce  |  Analyzujte data a generujte grafy  |  vzývat Kutools Funkce...
Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více
Použijte Kutools ve vašem preferovaném jazyce – podporuje angličtinu, španělštinu, němčinu, francouzštinu, čínštinu a více než 40 dalších!

Vylepšete si své excelové dovednosti s Kutools for Excela zažijte efektivitu jako nikdy předtím. Kutools for Excel Nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...


Office Tab Přináší do Office rozhraní s kartami a výrazně vám usnadňuje práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!