Option Explicit Sub abc() Dim a As Single, b As Single, v As Single, c As Single, j As Long, i As Long, k As Long a = 0 b = 100 v = 1 c = 1 j = 0 [A:E].Clear i = 1 For k = 1 To 4 Cells(1, k) = Choose(k, "a", "b", "v", "c") Cells(2, k) = Choose(k, a, b, v, c) Next With [A1:D1] .HorizontalAlignment = xlHAlignCenter .Font.Bold = True .Font.Color = vbBlue End With i = 4 For k = 1 To 5 Cells(4, k) = Choose(k, "#", "P", "A", "D", "V") Next With [A4:E4] .HorizontalAlignment = xlHAlignCenter .Font.Bold = True .Font.Color = vbBlue End With i = 5 Do a = a + v j = j + 1 If b - a > 0 Then For k = 1 To 5 Cells(i, k) = Choose(k, j, a - v, a, b - a, v) Next Else For k = 1 To 5 Cells(i, k) = Choose(k, j, a - v, a, a - b, v) Next End If If a > b Then i = i + 1 Cells(i, 1) = "----->" Cells(i, 1).HorizontalAlignment = xlHAlignCenter Cells(i, 2) = a Exit Do End If If v <= 0 Then For k = 1 To 4 With Cells(i, k) .Value = ":(" .HorizontalAlignment = xlHAlignCenter .Font.Color = vbRed End With Next Exit Do End If v = Sqr((b - a) * 2 * c) Cells(i, 5) = v i = i + 1 Loop i = i + 1 Cells(i, 1) = "** End **" [A1].Select End Sub |