Я только начинаю изучать Excel VBA, и у меня возникают проблемы с конкретным упражнением. Учитывая столбец из 20 случайно генерируемых целых чисел от 0 до 100 в столбце, я хочу написать программу VBA, которая пишет в столбце рядом с ним «pass», если число больше или равно 50 и «fail», если число меньше 50.Looped If/Then Functions in Excel VBA
В моем подходе используется функция циклирования от i = 1 до 20 с оператором If для каждой ячейки (i, 1), которая записывала бы пропуск или отказ в (i, 2).
Sub CommandButton1_Click()
'Declare Variables
Dim score As Integer, result As String, i As Integer
'Setup Loop function, If/Then function
For i = 1 To 20
score = Sheet1.Cells(i, 1).Value
If score >= 60 Then result = "pass"
Sheet1.Cells(i, 2).Value = result
Next i
End If
End Sub
Могу ли я получить представление о том, что я делаю неправильно?
Заранее благодарен!
Я не уверен, что ошибка вы получаете, но это выглядит, как вам нужно сбросьте значение результата для каждой итерации цикла. Может быть, объявить и инициализировать результат внутри цикла. – PerpetualStudent