Как сделать цикл VBA
Реально же сделать цикл внесения данных в ячейки: "0-100 100-200 200-300 300-400 400-0" это данные вносимые вниз в столбец
Где: "0-" - константа, "100" - переменная, вводимая пользователем.
Может быть и так:
"0-300 300-600 600-0" это данные вносимые вниз в столбец
Sub SumRows()
'переменные
Dim sSunRows As Single
Dim d As Single
Dim sAreaRows As Single
myPi = WorksheetFunction.Pi
d = Trim(Worksheets("Строка").Range("O2").Value)
'тело
sAreaRows = Application.InputBox("Введите max дефектуемый участок")
sSunRows = d * myPi / sAreaRows
sSunRows = WorksheetFunction.RoundDown(sSunRows, 0) - 2
Range("B14").EntireRow.Offset(1).Resize(sSunRows).Insert Shift:=xlDown
b = 14 + sSunRows + 1
For I = 14 To b
Range("I" & I & ":" & "J" & I).MergeCells = True
Next
Range("I" & "14" & ":" & "J" & "14").Value = "0-" & sAreaRows
For I = 15 To b
Range("I" & I & ":" & "J" & I).Value = sAreaRows & "-" & sAreaRows + sAreaRows
Next
End Sub
Застрял я в последних 4 строках
Ответы (1 шт):
Автор решения: Nevod
→ Ссылка
Такое чувство, что ваша проблема заключается в том, как правильно собрать алгоритм вывода последовательности. От нуля и до конца массива с шагом sAreaRows.
Где: sAreaRows - значение, определяемое пользователем.
Попробую угадать:
Dim sLeft: sLeft = 0
For I = 15 To b
Dim sRight: sRight = sLeft + sAreaRows
If I = b Then sRight = 0
Range("I" & I).Value = sLeft & "-" & sRight
sLeft = sLeft + sAreaRows
Next
И ещё, вам достаточно заполнить левую ячейку среди объединённых, т.е. столбец I.