Ошибка Run-time error 9: subscript out of range. В чем причина? - VBA

Узнай цену своей работы

Формулировка задачи:

В VBA не очень шарю, но пришлось написать программу для выставления цен. Появляется ошибка, не могу понять, что не так. Задача: написать программу, которая берет число из ячейки F1, если оно больше значения из ячейки A1 и меньше B1, то в ячейку G1 записывается сумма F1+D1, если нет, то сравнивает F1 с A2 и B2. Ну и цикл дальше, в столбце F много срок, которые нужно сравнить. К F1 должно прибавляться значение из ячейки столбца D, которое соответствует строке интервала, в который F1 попадает. Ошибку выдает в строке с IF. Помогите разобраться, пожалуйста.

Решение задачи: «Ошибка Run-time error 9: subscript out of range. В чем причина?»

textual
Листинг программы
Private Sub CommandButton1_Click()
   Dim i As Integer, j As Integer
   With ThisWorkbook.Worksheets("Sheet1")
    For i = 1 To 200
       For j = 1 To 200
           If .Range("F" & i) > .Range("A" & j) And _
              .Range("F" & i) < .Range("B" & j) Then
                  .Range("G" & i) = .Range("F" & i) + .Range("D" & j)
                  Exit For
           End If
        Next
     Next
    End With
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.929 из 5