Jak vypsat nebo vygenerovat všechny možné kombinace v aplikaci Excel?
Řekněme, že mám následující dva sloupce dat, a teď chci vygenerovat seznam všech možných kombinací na základě dvou seznamů hodnot, jak je zobrazen levý snímek obrazovky. Možná můžete vypsat všechny kombinace jeden po druhém, pokud existuje několik hodnot, ale pokud existuje několik sloupců s více hodnotami, aby bylo možné uvést možné kombinace, zde je několik rychlých triků, které vám mohou pomoci při řešení tohoto problému v aplikaci Excel .
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
Seznamujte nebo generujte všechny možné kombinace z více seznamů pomocí výkonné funkce
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 zadám do buňky D2 a poté stiskněte vstoupit klíč k získání výsledku, viz screenshot:
2. Poté vyberte buňku D2 a přetáhněte úchyt výplně dolů k buňkám, dokud nezískáte prázdné buňky, a na základě hodnot dvou seznamů budou uvedeny všechny možné kombinace. Viz screenshot:
Seznamujte nebo generujte všechny možné kombinace ze tří nebo více seznamů pomocí kódu VBA
Možná je pro vás výše uvedený vzorec poněkud obtížné použít, pokud existuje více dat sloupců, bude obtížné je upravit. Zde představím kód VBA, abych se s ním rychle vypořádal.
1. Podržte ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.
2, klikněte Vložit > Modula vložte následující kód do Modul Okno.
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
3. Poté stiskněte F5 klíč ke spuštění tohoto kódu a všechny kombinace 3 sloupců budou vygenerovány najednou, viz screenshot:
Seznamujte nebo generujte všechny možné kombinace z více seznamů pomocí výkonné funkce
Pokud existuje více seznamů, je třeba uvést hodnoty možných kombinací, možná je pro vás obtížné upravit kód. Tady mohu doporučit mocný nástroj - Kutools pro Excel, obsahuje užitečnou funkci Seznam všech kombinací který může rychle vypsat všechny možné kombinace na základě daných seznamů dat.
Po instalaci Kutools pro Excel, udělejte prosím toto:
1. klikněte Kutools > Vložit > Seznam všech kombinací, viz screenshot:
2. V Seznam všech kombinací v dialogovém okně proveďte níže uvedené ukázkové operace:
3. Pak byly všechny zadané hodnoty a oddělovače uvedeny v dialogovém okně, viz screenshot:
4.A potom klikněte Ok Tlačítko a vyskočí okno s výzvou, které vám připomene výběr buňky k výstupu výsledku, viz screenshot:
5, klikněte OK, všechny možné kombinace založené na daných seznamech byly vygenerovány do listu, jak ukazuje následující snímek obrazovky:
Klikněte a stáhněte si nyní Kutools pro Excel!
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
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a 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 usnadňuje vám 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!