prosims
Thursday, 03 May 2007, 0:40
В VBA я новичек. Не могу написать макрос в Excel, уже на стены лезу.
Дано:
носки 45
трусы 43
штаны 75
майки 28
шубы 67
чай 56
кофе 54
сало 32
Нужно чтобы они делились по суммам в 150 штук, то есть вот так:
носки 45
трусы 43
штаны 62
штаны 13
майки 28
шубы 67
чай 52
чай 4
кофе 54
сало 32
Может кто сможет написать весь код, чтоб я мог разобраться, а то я не могу допереть сам.
cdfhobr
Saturday, 05 May 2007, 22:25
Пускай генерятся рандомные числа, а когда сумма будет 150 - Стоп!
prosims
Sunday, 06 May 2007, 22:06
Вот ответ на мой вопрос. Есть еще один ламерский вопрос, подскажите, что нужно добавить, чтобы этот макрос работал не на весь лист, а обраватывал только конкретный диапазон строк например с 25-й по 64ю.
i = 4
Sum = 0
Do While Cells(i, 2) <> ""
razn = 192 - Sum
If Cells(i, 3) < razn Then
Sum = Sum + Cells(i, 3)
ElseIf Cells(i, 3) > razn Then
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Selection.Insert Shift:=xlDown
Cells(i + 2, 1) = Cells(i, 1)
Cells(i + 2, 2) = Cells(i, 2)
Cells(i + 2, 3) = Cells(i, 3) - razn
Cells(i, 3) = razn
i = i + 1
Sum = 0
ElseIf Cells(i, 3) = razn Then
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
i = i + 1
Sum = 0
End If
i = i + 1
Loop