dpserver
Goto Top

Excel 2016 - mögliche Kombinationen aus einer Spalte bilden

Hallo,

ich habe in Spalte A, in den Zeilen 1-17 verschiedene Werte stehen und möchte in Excel alle möglichen Zweierkombinationen ausgeben.

Beispiel
SPALTE A
A
B
C
D
E
usw.

Soll ergeben:
AB
AC
AD
AE
usw

Wobei ich folgendendes gern ausschliessen möchte
AA
BB
CC usw.

AB UND BA reicht, wenn es als AB 1x ausgeben wird. BA wird nicht als Ergebnis gewünscht.

Kann mir dabei jemand helfen?

Vielen Dank Frank

Content-Key: 343315

Url: https://administrator.de/contentid/343315

Printed on: April 16, 2024 at 14:04 o'clock

Mitglied: 133417
Solution 133417 Jul 13, 2017 updated at 12:21:35 (UTC)
Goto Top
Permutation ist dein Stichwort
https://www.extendoffice.com/documents/excel/3657-excel-generate-all-per ...
https://learn-powershell.net/2013/02/21/fun-with-powershell-and-permutat ...
Gibts hierzu auch schon diverse Threads im Forum zum Thema.

Für deine Anforderung reichen aber zwei verschachtelte FOR-Schleifen.
Sub Permute()
    Dim rowEnd As Long, outNum As Long
    outNum = 1
    With ActiveSheet
        rowEnd = .Cells(Rows.Count, "A").End(xlUp).Row  
        For i = 1 To rowEnd
            For x = i + 1 To rowEnd
                .Cells(outNum, "B").Value = .Cells(i, 1).Value & .Cells(x, 1).Value  
                outNum = outNum + 1
            Next
        Next
    End With
End Sub
Gruß
Member: DPSERVER
DPSERVER Jul 13, 2017 at 12:25:18 (UTC)
Goto Top
Vielen Dank, habe mir das angeschaut.

Zum einen unterbindet das nicht, dass AA oder BB usw. kombiniert werden.
Das lässt sich im Excel jedoch schnell lösen.

Zum zweiten jedoch, finde ich keine Lösung das AB und BA nicht als 2 Werte ausgegeben werden.
Gibt es dafür eine Formel oder einen Lösungsansatz?

VG Frank
Mitglied: 133417
Solution 133417 Jul 13, 2017 updated at 13:04:15 (UTC)
Goto Top
Zitat von @DPSERVER:

Vielen Dank, habe mir das angeschaut.

Zum einen unterbindet das nicht, dass AA oder BB usw. kombiniert werden.
Doch, siehe Code oben...
Zum zweiten jedoch, finde ich keine Lösung das AB und BA nicht als 2 Werte ausgegeben werden.
Gibt es dafür eine Formel oder einen Lösungsansatz?
siehe Code oben das berücksichtigt auch das...
Member: DPSERVER
DPSERVER Jul 13, 2017 at 13:25:28 (UTC)
Goto Top
KLASSE! Funktioniert fast perfekt.
Ich habe vergessen:

Zwischen den "AB" soll bitte ein Leerzeichen. Also "A B"

Kannst du das BITTE im Code noch anpassen. Für mich ist das Neuland.

VIELEN DANK Frank
Mitglied: 133417
Solution 133417 Jul 13, 2017 updated at 19:03:13 (UTC)
Goto Top
Zwischen den "AB" soll bitte ein Leerzeichen. Also "A B"
Zeile 8 so ändern:
.Cells(outNum, "B").Value = .Cells(i, 1).Value &  " " & .Cells(x, 1).Value   
Kannst du das BITTE im Code noch anpassen. Für mich ist das Neuland.
Hier ist deutsche Land, für's Neuland bitte hier klingeln face-smile.

Gruß
Member: DPSERVER
DPSERVER Jul 14, 2017 at 07:49:13 (UTC)
Goto Top
Vielen Dank für die Hilfe. Das Thema und die Möglichkeiten sind sehr interessant. Am Samstag kommt der Lesestoff dazu ;o)