Top.Mail.Ru
Ответы
Аватар пользователя
10лет
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Нужна помощь по созданию макросов vba в excel

НАПИСАЛ КОД, НО НЕ МОГУ ОТКРЫТЬ ПИШЕТ ОШИБКУ Argument not optional

Sub Ìàêðîñ3(ç)
Const h = 0.05
Const a = 19.713, b1 = 3.552, b2 = 2.644, b3 = -1.296
Const c1 = 2.022, c2 = -0.862, c3 = -2.127

Dim x1, x2, x3, y As Single
Dim x1min, x2min, x3min, ymin As Single
Dim x1min, x2min, x3min, ymax As Single

x1max = 10: x2max = 10: x3max = 10: ymax = -100000
x1min = 10: x2min = 10: x3min = 10: ymin = 100000

For x1 = -1 To 1 + h / 2
For x2 = -1 To 1 + h / 2
For x3 = -1 To 1 + h / 2
y = a + b1 * x1 + b2 * x2 + b3 * x3 + c1 * x1 * x2 + c2 * x1 * x3 + c3 * x2 * x3

If y < ymin Then
ymin = y
x1min = x1: x2min = x2: x3min = x3
End If

If y < ymax Then
ymax = y
x1max = x1: x2max = x2: x3max = x3
End If

Next x3
Next x2
Next x1

Range("A1").Value = "Ymin ="
Range("B1").Value = ymin
Range("A2").Value = "x1 ="
Range("B2").Value = x1min
Range("A3").Value = "x2 ="
Range("B3").Value = x2min
Range("A4").Value = "x3 ="
Range("B4").Value = x3min

Range("A6").Value = "Ymax ="
Range("B6").Value = ymax
Range("A7").Value = "x1 ="
Range("B7").Value = x1max
Range("A8").Value = "x2 ="
Range("B8").Value = x2max
Range("A9").Value = "x3 ="
Range("B9").Value = x3max

End Sub

И вообще как пользоваться макросом и что является конечным результатом после написания кода????

Дополнен

короче это задание по высшей мат. тут дается уравнение и по всей видимости через этот код нужно найти наибольшее и наименьшее функции

Дополнен

аппроксимирующей функции

По дате
По рейтингу
Аватар пользователя
Просветленный
10лет

На какую строчку ругается?
Пользуйтесь дебагером, смотрите за переменными в разное время.

Аватар пользователя
Просветленный
10лет

x1min = x1: x2min = x2: x3min = x3
Это че за старные строчки?
А результатом работы макроса может являтся новый лист, какие-то данные, поправленный старый и вообще практически все, что угодно в пределах екселя.