Este Código VBA: Geef een lijst weer van alle mogelijke opties voor Excel, nauwkeurige wijziging van het formaat van de entrada, waardoor 'MsgBox' en eu precies kunnen worden gekozen voor een selectie van 1 kolom, een hoeveelheid van de geselecteerde opties, en de mogelijkheid om een wijziging aan te brengen geen code.
Sai 'MsgBox "Too many permutations!", vbInformation, "Kutools for Excel"' Er zijn enkele cijfers en geen selectie beschikbaar
Kies een selectie van 1 coluna/linhas.
voorbeeld
Er is een selectie van 12345678 die 5 van 8 keer kan doorgaan als er geen code is.
comeca 12345
eindig met 87654.
'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