Option Explicit
Option Base 0
Private iEstatica(5) As Integer
Private iDinamica() As Integer
Private Sub Form_Load()
LoadEstatica
LoadDinamica
End Sub
Private Sub LoadEstatica()
Dim iIdx As Integer
For iIdx = 0 To 4
iEstatica(iIdx) = iIdx + 1
Next iIdx
End Sub
Private Sub LoadDinamica()
ReDim iDinamica(22)
Dim iIdx As Integer
For iIdx = 0 To 21
iDinamica(iIdx) = iIdx + 6
Next iIdx
End Sub
Private Sub Command1_Click()
Text1.Text = ""
Dim sEstatica As String, sDinamica As String
Dim iBound As Integer, iCount As Integer
Dim iIdx As Integer, iFrom As Integer, iIdx2 As Integer
iBound = UBound(iDinamica) - 1
iCount = 4
Do Until iCount = 0
sEstatica = ""
For iIdx = 0 To iCount
sEstatica = sEstatica & iEstatica(iIdx) & " "
Next iIdx
For iIdx = 0 To 3 - iCount
sEstatica = sEstatica & iDinamica(iIdx) & " "
Next iIdx
iFrom = 4 - iCount
For iIdx = iFrom To iBound
sDinamica = ""
iIdx2 = iIdx
Do
sDinamica = sDinamica & iDinamica(iIdx2) & " "
iIdx2 = iIdx2 + 1
Loop Until iIdx2 > 4 - iCount
Text1.Text = Text1.Text & sEstatica & sDinamica & vbCrLf
iFrom = iFrom + 1
Next iIdx
iCount = iCount - 1
Loop
End Sub