In Столбец A , начиная с A1, представляет собой список из 5 продуктов. В столбце B рядом с первым продуктом стоит 1, указывающий, что это исправлено, т. Е.
- Продукт A - 1
- Продукт B
- Продукт C
- Продукт D
- Продукт E
Я уже выяснил, как рассчитать все перестановки для этих 5 продуктов, давая мне 120 рядов возможностей. См. Код ниже:
Sub Permutations_5_From_5()
Dim rRng As Range
Dim lRow As Long
With Application
.ScreenUpdating = False: .Calculation = xlCalculationManual: .DisplayAlerts = False
End With
Range("C:G").ClearContents
Set rRng = Range("A1", Range("A1").End(xlDown))
For P1 = 1 To rRng.Count
For P2 = 1 To rRng.Count
For P3 = 1 To rRng.Count
For P4 = 1 To rRng.Count
For P5 = 1 To rRng.Count
If _
P1 <> P2 And _
P1 <> P3 And _
P1 <> P4 And _
P1 <> P5 And _
P2 <> P3 And _
P2 <> P4 And _
P2 <> P5 And _
P3 <> P4 And _
P3 <> P5 And _
P4 <> P5 Then
lRow = lRow + 1
Range("C" & lRow) = Range("A" & P1)
Range("D" & lRow) = Range("A" & P2)
Range("E" & lRow) = Range("A" & P3)
Range("F" & lRow) = Range("A" & P4)
Range("G" & lRow) = Range("A" & P5)
End If
Next P5
Next P4
Next P3
Next P2
Next P1
Range("A1").Select
With Application
.DisplayAlerts = True: .Calculation = xlCalculationAutomatic: .ScreenUpdating = True
End With
End Sub
Как мне рассчитать только те перестановки, которые все начинаются с фиксированного продукта (т. Е. Продукта А), который должен уменьшить это до 60 строк возможностей?
Спасибо,
Джордан