Доброго времени суток, подскажите пожалуйста как сделать так чтобы просчитывалось до 50 значений в ячейке H48 и при этом H49 было значение 1, далее у нас будет просчет до 50 в ячейке H48, при этом в ячейке H49 уже будет 2, ну и так далее, надеюсь поняли)) и при расчете когда результат в ячейке в ячейке H51 = целое число, то цикл должен остановиться. Можете не обращать внимание на в ячейке F51, я сделал для себя потому что не знаю кода! Заранее благодарен!!!
[vba]
Код
Sub Êíîïêà1_Ùåë÷îê()
For y = 1 To 50 For x = 1 To 50 Range("H48").Value = Range("H48").Value + 1 Next x Range("H49").Value = Range("H48").Value + 1 Next y
Range("H48").Value = 1 Range("H49").Value = 1 End Sub
[/vba]
Доброго времени суток, подскажите пожалуйста как сделать так чтобы просчитывалось до 50 значений в ячейке H48 и при этом H49 было значение 1, далее у нас будет просчет до 50 в ячейке H48, при этом в ячейке H49 уже будет 2, ну и так далее, надеюсь поняли)) и при расчете когда результат в ячейке в ячейке H51 = целое число, то цикл должен остановиться. Можете не обращать внимание на в ячейке F51, я сделал для себя потому что не знаю кода! Заранее благодарен!!!
[vba]
Код
Sub Êíîïêà1_Ùåë÷îê()
For y = 1 To 50 For x = 1 To 50 Range("H48").Value = Range("H48").Value + 1 Next x Range("H49").Value = Range("H48").Value + 1 Next y
Range("H48").Value = 1 Range("H49").Value = 1 End Sub
Если Вам хочется прямо вот именно на листе (возможно, для наглядности) все это делать, а не внутри макроса, то примерно так можно [vba]
Код
Sub Кнопка1_Щелчок() Range("H48").Value = 1 Range("H49").Value = 1 For y = 1 To 50 For x = 1 To 50 Range("H48").Value = x If Int(Range("F51")) = Range("F51") Then 'Exit For 'Exit For Exit Sub End If Next x Range("H49").Value = y Next y End Sub
[/vba] ========== Файл перевложил. Добавил Exit Sub
Если Вам хочется прямо вот именно на листе (возможно, для наглядности) все это делать, а не внутри макроса, то примерно так можно [vba]
Код
Sub Кнопка1_Щелчок() Range("H48").Value = 1 Range("H49").Value = 1 For y = 1 To 50 For x = 1 To 50 Range("H48").Value = x If Int(Range("F51")) = Range("F51") Then 'Exit For 'Exit For Exit Sub End If Next x Range("H49").Value = y Next y End Sub
_Boroda_, Отлично, спасибо вам большое, 90 процентов решено, вот только цикл не останавливается при целом числе, 3^2+4^2=5^2, в решении нет дробей. То есть при H48=3 и H49=4 в ячейке F51=1 и цикл должен был остановиться, но этого не происходит
_Boroda_, Отлично, спасибо вам большое, 90 процентов решено, вот только цикл не останавливается при целом числе, 3^2+4^2=5^2, в решении нет дробей. То есть при H48=3 и H49=4 в ячейке F51=1 и цикл должен был остановиться, но этого не происходитAsretyq
Сообщение отредактировал Asretyq - Понедельник, 07.08.2017, 16:14