1

Я совсем недавно использовал VBA, и до сих пор не сталкивался с какими-либо проблемами. По какой-то причине, и, я не могу понять это для себя, визуальные основы не будут включать знаки «+» или «-» в подпрограммах. Вот что я хочу, чтобы программа делала:

Function f(x As Single) As Single

    f = 0.2 + 25 * x - 200 * x ^ 2 + 675 * x ^ 3 - 900 * x ^ 4 + 400 * x ^ 5

End Function

Sub Simp()

Dim x As Single, y As Single

n = Cells(3, 3)
a = Cells(4, 3)
b = Cells(5, 3)

For i = 1 To n

    a + i = Cells(2 + i, 1)


Next i

End Sub

Проблема, с которой я столкнулся, заключается в том, что всякий раз, когда я набираю «a +i = Cells(2 +i, 1)», программа меняет его на «ai = Cells(2 +i, 1)» и говорит «Ошибка компиляции: Ожидаемая подпрограмма, функция или свойство. " То же самое не происходит с другими, завершенными программами. Что это и как мне это исправить?

1 ответ1

0

Вы упоминаете -

Проблема, с которой я столкнулся, заключается в том, что всякий раз, когда я набираю «a +i = Cells(2 +i, 1)», программа меняет его на «ai = Cells(2 +i, 1)» и говорит «Ошибка компиляции: Ожидаемая подпрограмма, функция или свойство. "

Редактор ожидает, что a будет вызовом другой подпрограммы или функции, поскольку вы ничего не делаете с a после того, как он преобразует его в a i=cells(2+i,1) . Преобразование происходит потому, что вы не говорите ему делать что-либо до вычисления a+i и, следовательно, оно не будет выполнять операцию.

Чтобы исправить это, вам нужно указать место для хранения результата a+i до вычисления. Сделайте это, изменив порядок вашей операции:

Cells(2+i,1)=a+i

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .