Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программа с массивом VBA Excel.

Михаил Пареченков Ученик (92), закрыт 4 года назад
Условие: Задан массив E(5, 5) и число а. Найти количество элементов, равных по значению а. Элементы массива из ячеек таблицы Excel. Значение a - ввод на клавиатуре

Исправить код исходя условия задачи.
Код:
Public Sub proc2()
Dim a() As Single, zD As Single
Dim i, n, k
zD = InputBox("Заданное число а: ")
n = InputBox("Кол-во элементов: ")
ReDim a(1 To n) As Single
For i = 1 To n
a(i) = InputBox("Введите элемент: " & i)
If a(i) = zD Then k = k + 1
Next i
If k = 0 Then
MsgBox ("Таких элементов нет")
Exit Sub
End If
For i = 1 To n
If a(i) = 0 Then a(i) = k
Next i
sss = ""
For i = 1 To n
sss = sss & a(i) & " "
Next i
MsgBox (sss)
End Sub
Лучший ответ
Abram Pupkin Высший разум (103803) 4 года назад
"... массив (5,5)..."
"...из ячеек таблицы Excel..."

Это значит что двумерный массив (5х5) записан в ячейки
Вы задали одномерный массив и ручной ввод

исправлять ошибки - сложно.
Проще новый макрос написать
Sub ParechenkovM()
[a1:z99].ClearContents ' Oчистить содержимое
Dim nn, mm, i, j, ss As Integer 'С помощью Dim создаём переменные.
Dim t1, t2 As String ' текст
Dim A() As Double 'С помощью Dim создаём матрицу A.

nn = InputBox("Введите paзмер N (верт)") 'размер матрицы по горизон
mm = InputBox("Введите paзмер M (гориз)") ' размер матрицы по вертик

ReDim A(1 To nn, 1 To mm) ' создаем матрицу NxM

Randomize 'Заполняю матрицу целыми случайными числами от 1 до 99.
For i = 1 To nn Step 1
For j = 1 To mm Step 1
A(i, j) = Int(Rnd() * 99)
Cells(i, j).Value = A(i, j)
Next j
Next i

Beep ' 3вуковой сигнал
ss = InputBox("Матрица NxM создана " & vbCr & " Bведите поисковое значение «A»")
'kk = 0
t1 = " не"
t2 = " "
For i = 1 To nn
For j = 1 To mm
If A(i, j) = ss Then
kk = kk + 1 ' Koл-во повторов
t1 = ""
t2 = " paз"
End If
Next j
Next i
MsgBox " 3начение " & ss & t1 & " повторяется " & kk & t2 'вывод информации на монитор"
End Sub
Остальные ответы
Похожие вопросы