вот задание Задание 6
Даны массивы f1, ..f8 ; d1, ..d10 .
Сформировать массив Hi, каждый элемент которого равен fi * сумму di при i = от 5 до 10 . Найти Hmin и заменить его d1.
использование function обязательно !
Sub Задание6()
Dim f(8), d(10), i, min, summ() As Integer
Dim H(10) As Integer
For i = 1 To 8
f(i) = Cells(i + 1, 1)
Next
d(1) = Cells(2, 2)
min = 9999999
For i = 1 To 8
H(i) = f(i) * summ()
If H(i) < min Then
H(i) = min
End If
Next
For i = 1 To 8
If H(i) = min Then
H(i) = d(1)
End If
Cells(i + 1, 4) = H(i)
Next
End Sub
Function summ() As Integer
Dim i As Integer
summ = 0
For i = 5 To 10
summ = summ + Cells(i + 1, 2)
Next
End Function
Другие языки программирования и технологии
помогите найти ошибку в коде VBA exel !
Dim f(8), d(10), i, min, summ() As Integer
В VBA объявление в одну строчку не делаются, т. к. только summ() будет Integer, все остальные будут Variant. Причем summ() объявляется как массив, а используется как функция! Вы уж определитесь в чем то одном...
Dim f(8) As Integer
Dim d(10) As Integer
Dim i As Integer
...
Dim f(8) As Integer ' Объявлен массив из 9-ти элементов (0-8)
For i = 1 To 8
f(i) = Cells(i + 1, 1)
Next
Цикл от 1 до 8 (нулевой элемент в массиве f() не используется?) Массив объявлен как Integer, в ячейке - строка. Почему не используем преобразование типов? Дальше код читать надоело...
В VBA объявление в одну строчку не делаются, т. к. только summ() будет Integer, все остальные будут Variant. Причем summ() объявляется как массив, а используется как функция! Вы уж определитесь в чем то одном...
Dim f(8) As Integer
Dim d(10) As Integer
Dim i As Integer
...
Dim f(8) As Integer ' Объявлен массив из 9-ти элементов (0-8)
For i = 1 To 8
f(i) = Cells(i + 1, 1)
Next
Цикл от 1 до 8 (нулевой элемент в массиве f() не используется?) Массив объявлен как Integer, в ячейке - строка. Почему не используем преобразование типов? Дальше код читать надоело...
Vlad Phirsov
Нет, это все "как учили" вот в чем проблема :\ я думаю что неправильно функцию задал /вызвал

Vlad Phirsov
Спасибо, все починил :)
ррполпрл
Sub button()
e = 2.7
b = InputBox("Ââåäèòå b: ")
x = InputBox("Ââåäèòå x: ")
a = 5 * 10 ^ (-6)
w = (a + b) ^ 2 + ((10) ^ -6) * (tanx) / (x + 1)
v = 1 / 2 * b - Sqr(w - a * b)
s = 100 * e ^ (-0.2 * b) / (0.02 * v ^ 2 - 2.1 * x)
MsgBox ("w = " & w)
MsgBox ("v = " & v)
MsgBox ("s = " & s)
End Sub
помогите ошибку найти
e = 2.7
b = InputBox("Ââåäèòå b: ")
x = InputBox("Ââåäèòå x: ")
a = 5 * 10 ^ (-6)
w = (a + b) ^ 2 + ((10) ^ -6) * (tanx) / (x + 1)
v = 1 / 2 * b - Sqr(w - a * b)
s = 100 * e ^ (-0.2 * b) / (0.02 * v ^ 2 - 2.1 * x)
MsgBox ("w = " & w)
MsgBox ("v = " & v)
MsgBox ("s = " & s)
End Sub
помогите ошибку найти
Похожие вопросы
- помогите найти ошибку в коде на Си
- Помогите найти ошибку в коде
- Помогите найти ошибку в коде. делфи
- Помогите найти ошибки в коде (паскаль)
- Помогите найти ошибку в коде с++. Скорее всего ошибка в сравнении строк.
- (PASCAL)помогите найти ошибку в коде задачи, и исправить
- помогите найти ошибку в коде. ПАскаль
- Помогите найти ошибку в коде в паскале
- Помогите исправить ошибку в коде программы на паскале.
- Не могу найти ошибку в коде с++