Hur genererar jag alla kombinationer av 3 eller flera kolumner i Excel?
Om jag antar att jag har 3 kolumner med data, nu vill jag generera eller lista alla kombinationer av data i dessa 3 kolumner som visas nedan. Har du några bra metoder för att lösa denna uppgift i Excel?
Generera alla kombinationer baserat på tre datakolumner med hjälp av en formel
Generera alla kombinationer baserade på tre eller flera kolumner med data med hjälp av VBA-kod
Generera alla kombinationer baserat på tre datakolumner med hjälp av en formel
Följande långa formel kan hjälpa till att lista alla kombinationer av 3 kolumner, gör så här:
1. Klicka på en cell där resultatet ska skickas och kopiera och klistra sedan in formeln nedan:
Anmärkningar: I denna formel: A2: A4, B2: B6, C2: C5 är de dataområden som du vill använda.
2. Dra sedan fyllningshandtaget ner till cellerna tills tomma celler visas, det vill säga alla kombinationer av de tre kolumnerna har listats, se skärmdump:
Generera alla kombinationer baserade på tre eller flera kolumner med data med hjälp av VBA-kod
Ovanstående långa formel är något svår att använda, om det finns flera kolumner som data behöver användas, kommer det att vara besvärligt att ändra. Här kommer jag att införa en VBA-kod för att hantera den snabbt.
1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.
2. Klicka Insert > Modulernaoch klistra in följande kod i modulfönstret.
VBA-kod: Generera alla kombinationer av tre eller flera kolumner
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
Anmärkningar: I ovanstående kod, A2: A4, B2: B6, C2: C5 är det dataområde som du vill använda, E2 är den utdatacell som du vill hitta resultaten. Om du vill få alla kombinationer av fler kolumner, ändra och lägg till andra parametrar i koden efter behov.
3. Tryck sedan på F5 nyckel för att köra den här koden, och alla kombinationer av 3 eller flera kolumner genereras samtidigt, se skärmdump:
Generera alla kombinationer baserat på tre eller flera kolumner med data med hjälp av en fantastisk funktion
Om du har Kutools för Excel, med sin kraftfulla Lista alla kombinationer kan du snabbt och enkelt lista alla kombinationer av flera kolumner.
När du har installerat Kutools för Excel, gör så här:
1. Klicka Kutools > Insert > Lista alla kombinationer, se skärmdump:
2. I Lista alla kombinationer dialogrutan, ange kolumndata och separatorer för att lista kombinationerna enligt följande skärmdump:
3. När du har ställt in data och separator klickar du sedan på Ok knappen, i nästa rutan, välj en cell för att hitta resultatet, se skärmdump:
4. Och klicka sedan på OK -knappen, alla kombinationer har genererats omedelbart enligt nedanstående skärmdump:
Klicka för att ladda ner Kutools för Excel och gratis testversion nu!
De bästa Office-produktivitetsverktygen
Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%
- Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
- Sammanfoga celler / rader / kolumner och förvaring av data; Delat cellinnehåll; Kombinera duplicerade rader och summa / genomsnitt... Förhindra duplicerade celler; Jämför intervall...
- Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
- Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
- Favorit och sätt snabbt in formler, Intervall, diagram och bilder; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
- Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
- Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
- Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
- Gruppering av pivottabell efter veckonummer, veckodagen och mer ... Visa olåsta, låsta celler av olika färger; Markera celler som har formel / namn...
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!