VBA Урок_13 | Многомерные Массивы | Программирование для начинающих Просто и Доступно | Язык VBA
Вставка
- Опубліковано 29 вер 2024
- В этом видео рассказывается про Многомерные Массивы в языках программирования и в языке VBA, в частности.
Если Вы никогда не писали программы и не знаете с чего начать изучать программирование, тогда Вам сюда. Либо если Вы хотите начать изучать язык VBA, который входит в Excel. Просто и доступно, постепенно я приоткрою Вам мир программирования, для начала, на простом языке программирования VBA.
robotobor.pro - Доступное Программирование
Видеокурс "Погружение в язык VBA" - course.robotobo... - Профессиональное программирование на vba
хрень какаето я в стобце "A" не могу приминить данный код пишит что "type mismatch" что переводитса "несоответствие типов", хотя во всех других столцах работает и в 1-ой строке работает не работает именно когда указываем диапозон столцов 1 тоесть ("A") ? отпишите кто смог разобратьса почему так произошло
В конце урока при активном 2 листе, в массив записывались нули, думаю необходимо задать явно Лист1
massiv(r - START_ROW, k - START_CLMN) = Worksheets("Лист1").Cells(r, k)
Я несовсем понял зачем мы переименовали переменную "k", когда копируем массив на другую вкладку.
С ней я поступил также как и с "r" - удалил, и получил тот же результат.
+ogsv Я скажу Вам так, в программировании можно, вообще, много чего делать не стандартно и не архитектурно, и все будет работать, НО, когда Вы пишете большие программы, Вам четко следует разделять где находятся различные блоки кода, в том числе и переменные, тогда Вам будет легче сопровождать Ваш код и модифицировать его. По моему мнению существует два фундаментальных различных способа писать программы: 1 Архитектурно правильно написанные программы и 2 Программы написанные в стиле лапши (так пишут вирусы и всякую малварь). В данном случае, когда Вы используете ту же самую переменную "k" в различных блоках кода (циклических операторах), считайте, что это разные области видимости и в других языках у Вас бы это не вышло, если только Вы бы не объявили ее где-нибудь выше. Конечно можно экономить память и пользоваться по всему коду только глобальными общими переменными и чтобы считать коров и той же самой переменной, чтобы считать удой от всех коров, но это не правильная архитектура кода, это для системного программирования, вирусописательства и т.д., а не для прикладного. В общем, поверьте мне на слово, Вы избежите множество проблем в будущем при сопровождении и отладки кода, но за все нужно платить, конечно, у Вас будет использовано больше переменных и соответственно расход памяти.
А можно ли записать данные в массив не задавая его область (4,4) ?
У меня одни нули вывел на Листе2
Не подскажете, как сложить все ячейки массива?
Сложить ячейки диапазона можно, например, так WorksheetFunction.Sum(Range("A1:A3"))
Если необходимо сложить значения массива, то необходимо пробежаться циклом по всему массиву и аккумулировать сумму в одной переменной.