Wie generiert oder listet man alle möglichen Permutationen in Excel auf?
Zum Beispiel habe ich drei Zeichen XYZ, und jetzt möchte ich alle möglichen Permutationen basierend auf diesen drei Zeichen auflisten, um sechs verschiedene Ergebnisse zu erhalten: XYZ, XZY, YXZ, YZX, ZXY und ZYX. Wie können Sie in Excel schnell alle Permutationen basierend auf einer unterschiedlichen Anzahl von Zeichen generieren oder auflisten?
Generieren oder Auflisten aller möglichen Permutationen basierend auf Zeichen mit VBA-Code
Generieren oder Auflisten aller möglichen Permutationen basierend auf Zeichen mit VBA-Code
Der folgende VBA-Code kann Ihnen helfen, alle Permutationen basierend auf Ihrer spezifischen Anzahl von Buchstaben aufzulisten. Bitte gehen Sie wie folgt vor:
1. Halten Sie die Tasten ALT + F11 gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul und fügen Sie den folgenden Code im Modulfenster ein.
VBA-Code: Alle möglichen Permutationen in Excel auflisten
Sub GetString()
'Updateby Extendoffice
Dim xStr As String
Dim FRow As Long
Dim xScreen As Boolean
xScreen = Application.ScreenUpdating
Application.ScreenUpdating = False
xStr = Application.InputBox("Enter text to permute:", "Kutools for Excel", , , , , , 2)
If Len(xStr) < 2 Then Exit Sub
If Len(xStr) >= 8 Then
MsgBox "Too many permutations!", vbInformation, "Kutools for Excel"
Exit Sub
Else
ActiveSheet.Columns(1).Clear
FRow = 1
Call GetPermutation("", xStr, FRow)
End If
Application.ScreenUpdating = xScreen
End Sub
Sub GetPermutation(Str1 As String, Str2 As String, ByRef xRow As Long)
Dim i As Integer, xLen As Integer
xLen = Len(Str2)
If xLen < 2 Then
Range("A" & xRow) = Str1 & Str2
xRow = xRow + 1
Else
For i = 1 To xLen
Call GetPermutation(Str1 + Mid(Str2, i, 1), Left(Str2, i - 1) + Right(Str2, xLen - i), xRow)
Next
End If
End Sub
3. Drücken Sie dann die Taste F5, um diesen Code auszuführen, und ein Dialogfeld erscheint, das Sie auffordert, die Zeichen einzugeben, für die Sie alle Permutationen auflisten möchten. Siehe Screenshot:
4. Nachdem Sie die Zeichen eingegeben haben, klicken Sie auf die Schaltfläche OK, und alle möglichen Permutationen werden in Spalte A des aktiven Arbeitsblatts angezeigt. Siehe Screenshot:
Hinweis: Wenn die Länge der eingegebenen Zeichen gleich oder größer als 8 Zeichen ist, funktioniert dieser Code nicht, da es zu viele Permutationen gibt.
Auflisten oder Generieren aller möglichen Kombinationen aus mehreren Spalten
Wenn Sie alle möglichen Kombinationen basierend auf Daten aus mehreren Spalten generieren müssen, gibt es vielleicht keine gute Möglichkeit, diese Aufgabe zu bewältigen. Aber Kutools für Excel's Alle Kombinationen auflisten-Funktion kann Ihnen helfen, alle möglichen Kombinationen schnell und einfach aufzulisten. Klicken Sie hier, um Kutools für Excel herunterzuladen!
Kutools für Excel: Mit mehr als 300 praktischen Excel-Add-ins, kostenlos testbar ohne Einschränkungen für 30 Tage. Jetzt herunterladen und kostenlos testen!
Beste Büroproduktivitätswerkzeuge
Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
- Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!