Очень начинающий пользователь, испытывающий трудности с запуском этого кода. Я пытаюсь вычислить значение, основанное на некоторых других ячейках, и выполнить итерацию, чтобы свести к минимуму ошибку. При запуске я получаю вышеупомянутую ошибку на строке Cells (i, 17) = Cells (i, 5). Мысли? Спасибо.Ошибка во время выполнения Excel VBA 1004: Определенная пользователем или объектно-ориентированная ошибка
Private Sub CommandButton1_Click()
Dim i As Long
A = 6.112
B = 17.67
C = 243.5
epsilon = 0.622
G = B * C
maxerror = 0.001
For i = 2 To Rows.Count
Next i
iter = 0
Cells(i, 17) = Cells(i, 5)
Do While iter < 50
iter = iter + 1
bt = B * Cells(i, 17)
tpc = Cells(i, 17) + C
d = (Cells(i, 9)/A) * Exp(-bt/tpc)
dm1 = d - 1#
f = (Cells(i, 5) - Cells(i, 17)) - Cells(i, 16) * (epsilon/dm1 - Cells(i, 13))
df = -G/(tpc * tpc)
df = d * df * Cells(i, 16) * epsilon/(dm1 * dm1) - 1#
cor = f/df
Cells(i, 17) = Cells(i, 5) - cor
If Abs(cor) < maxerror Then
Exit Do
End If
Loop
End Sub
Что вы пытаетесь сделать при установке 'Cells (I, 17) = Cells (I , 5) '? Установите значение в ячейке «Ячейки (i, 17)», равное значению, находящемуся в настоящее время в «Ячейках (i, 5)»? И что такое 'For Loop'? Прямо сейчас он проходит весь цикл, прежде чем перейти к вашей переменной iter, поэтому результаты вашего цикла for будут одинаковыми каждый раз. –