Работа с редактором кода VBA. Вывод данных в WORD

Узнай цену своей работы

Формулировка задачи:

Дана матрица А(n,m). Найти максимумы в каждой строке и вывести массив квадратов этих элементов. (Ввод размерности матрицы осуществить через InputBox) Напишите пожалуйста)

Решение задачи: «Работа с редактором кода VBA. Вывод данных в WORD»

textual
Листинг программы
Sub Pudge1488()
    Dim a(), b()
    Dim i&, j&, n&
    Dim m1#, m2#, m3#, m4#, m5#, m6#, m7#, m8#, m9#, m10#
'--------------------
    ActiveSheet.UsedRange.EntireRow.Delete
    
    'вводим данные
    On Error Resume Next
    n = Int(InputBox("Введите порядок матрицы", "Ввод данных", 10))
    If Err Then
        Err.Clear
        MsgBox "Введите целое число от 1 до 10", vbInformation
        Exit Sub
    End If
    
    'наполняем массив случайными числами от 1 до 20
    ReDim a(1 To n, 1 To n)
    Randomize
    For i = 1 To n
        For j = 1 To n
            a(i, j) = (20 * Rnd) + 1
        Next
    Next
    Cells(1, 1).Resize(n, n) = a
    
    'находим максимум по каждой строке и возводим его в квадрат
    m1 = a(1, 1): m2 = a(2, 1): m3 = a(3, 1): m4 = a(4, 1): m5 = a(5, 1)
    m6 = a(6, 1): m7 = a(7, 1): m8 = a(8, 1): m9 = a(9, 1): m10 = a(10, 1)
    For i = 1 To n
        For j = 1 To n
        If a(1, j) > m1 Then m1 = (a(1, j)) ^ 2
        If a(2, j) > m2 Then m2 = (a(2, j)) ^ 2
        If a(3, j) > m3 Then m3 = (a(3, j)) ^ 2
        If a(4, j) > m4 Then m4 = (a(4, j)) ^ 2
        If a(5, j) > m5 Then m5 = (a(5, j)) ^ 2
        If a(6, j) > m6 Then m6 = (a(6, j)) ^ 2
        If a(7, j) > m7 Then m7 = (a(7, j)) ^ 2
        If a(8, j) > m8 Then m8 = (a(8, j)) ^ 2
        If a(9, j) > m9 Then m9 = (a(9, j)) ^ 2
        If a(10, j) > m10 Then m10 = (a(10, j)) ^ 2
        Next
     Next
    Cells(1, n + 2) = m1
    Cells(2, n + 2) = m2
    Cells(3, n + 2) = m3
    Cells(4, n + 2) = m4
    Cells(5, n + 2) = m5
    Cells(6, n + 2) = m6
    Cells(7, n + 2) = m7
    Cells(8, n + 2) = m8
    Cells(9, n + 2) = m9
    Cells(10, n + 2) = m10
    
End Sub

Оцени полезность:

11   голосов , оценка 3.727 из 5