Vraag : De generator van de combinatie

HI

I wil alle mogelijke combinaties aantallen van een bepaalde ingang produceren. Wat verschillende hier vastgestelde grootte is it
the kan 1 klusje zijn aan 4 klusjes. Geen herhalingen worden toegestaan, produceert

b.v.
ABCD

would het volgende.

I zou 2^n - 1, in dit geval 2^4 - 1 moeten krijgen = 15 results

A
AB
ABC
ABCD
B
BC
BCD
C
CD
D
AC
ACD
ABD
AD
BD

is 15

What is de beste code VB/VBA om this

Thanks
te creëren

Antwoord : De generator van de combinatie

Hallo Henry,

gelieve te proberen deze code. Het zal output aan Direct venster, gebruikte ik Word VBA.

Alex
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
Sub Combinaties ()
Const MYSET als Koord = „A, B, C, D, E, F“   'om het even welke die waarden worden afgebakend door“, „
Schemerige aElems () als Koord, aNibs (7) als Byte, I als Geheel, j als Geheel, nElems als Geheel, s als Koord

aElems () = verdeel (MYSET, „,“)
nElems = UBound (aElems)
Als nElems > 7 toen MsgBox „Teveel elementen: “ & nElems + 1: Sub van de uitgang

aNibs (0) = 1: aNibs (1) = 2: aNibs (2) = 4: aNibs (3) = 8: aNibs (4) = 16: aNibs (5) = 32: aNibs (6) = 64: aNibs (7) = 128
Voor I = 1 tot 2 ^ (nElems + 1) - 1
    s = ""
    Voor j = 0 aan nElems
        Als I en aNibs (j) Dan s = s & aElems (j)
    Daarna
    Debug.Print s
Daarna
Sub van het eind
Andere oplossingen  
 
programming4us programming4us