VBA Урок_9 | Структуры | Программирование для начинающих Просто и Доступно | Язык VBA

  Рет қаралды 12,132

ROBOTOBOR.PRO ✌ Доступное Программирование

ROBOTOBOR.PRO ✌ Доступное Программирование

Күн бұрын

Пікірлер: 20
@RobotoborPro
@RobotoborPro 9 жыл бұрын
на 23ей минуте сказал, что код становится "чистее", конечно же код становится ЧИЩЕ, а не чистее :). Аж слух режет, только после публикации видео обнаружил данный ЛЯП.
@liaiii3661
@liaiii3661 7 жыл бұрын
после мороженНое это уже неважно -)
@arman_davletov
@arman_davletov 7 жыл бұрын
Спс за уроки друг. Директор попросила меня сделать закрепленный верх и кнопку с действием - переходом к нужной ячейки по очереди и подтягиванием этой ячейки к закрепленный области. Можешь помочь в этом деле, а то я пока все изучу ей уже это станет не интересно). А ток все кулл, все понятно
@maxl7857
@maxl7857 Жыл бұрын
Класс :)
@V._A._S.
@V._A._S. 4 жыл бұрын
Отличное видео, но с одного раза запомнить будет трудновато.
@Szovk
@Szovk 9 жыл бұрын
Звук музыки вначале громче значительно голоса. Когда перескакиваю на след. урок то музыка качает слишком уж =))
@andrewzakharov4430
@andrewzakharov4430 7 жыл бұрын
это чтобы не засыпали)
@dimmmedved191
@dimmmedved191 4 жыл бұрын
Ошибка ByRef argument type как ее исправить ?
@RobotoborPro
@RobotoborPro 4 жыл бұрын
Тип аргумента не соответствует передаваемому значению, либо тип значения менять, либо тип аргумента
@ogsv81
@ogsv81 9 жыл бұрын
А "Class Module" случайно не для таких случаев предназначен? Если нет, то не могли бы вы рассказать про него.
@RobotoborPro
@RobotoborPro 9 жыл бұрын
+ogsv Да, классы они похожи на структуры и в некоторых языках они по функциональности почти одинаковые, но структуры в VBA малофункциональны, т.е. структуры в VBA могут содержать только, св-ва, т.е. переменные, в других же языках структуры как и классы могут содержать еще и методы. Классы в VBA тоже не полноценные и "костылявые", можно обойтись и без них (Уокенбах также считает), если только не получится так, что без них не обойтись. Вообще, на основе классов создаются объекты и на один такой объект в куче (памяти) может быть сколь угодно ссылок, а структуры являются значимыми типами т.е. как переменные и занимают полноценно память, их не нужно конструировать и работать с ними быстрее, вообще, эта тема обширная. Тему классов лучше рассматривать на примерах других языков программирования, где классы используются полноценно = C#, JAVA, C++ и т.д. Но, возможно, я разберу в каком-нибудь уроке данную тему и для VBA.
@ЯрославВарламов-ь7з
@ЯрославВарламов-ь7з 8 жыл бұрын
Обязательно сначала в структуре объявлять переменные , а затем повторять тоже самое в процедуре?
@RobotoborPro
@RobotoborPro 8 жыл бұрын
+Ярослав Варламов Определяя структуру, вы обязательно должны объявить в ней переменные, затем в коде, например, процедуры Вы должны создать переменную типа данной Вашей структуры, затем Вы работаете с Вашей переменной-структурой через ее поля (свойства, переменные). Это три разные действия (это НЕ тоже самое). Вы можете на основании Вашего типа-структуры создать множество переменных данного типа-структуры и пользоваться ими в одной процедуре, и это будут разные переменные, на зависящие от изменений друг друга.
@ЯрославВарламов-ь7з
@ЯрославВарламов-ь7з 8 жыл бұрын
Интересно, спасибо!
@AnonimusAnonimusAnon
@AnonimusAnonimusAnon 6 жыл бұрын
Тип, по сути - это маска формата если выражаться проще, верно?
@RobotoborPro
@RobotoborPro 6 жыл бұрын
Интересное определение🤔 В каком-то смысле это похоже на маску формата. Но такое определение сильно упращенно. Не нужно так его называть :)
@AnonimusAnonimusAnon
@AnonimusAnonimusAnon 6 жыл бұрын
@@RobotoborPro первый раз Вы детально не разжевали и сразу у меня возник ряд вопросов. К примеру Когда мы пишем Dim mladSotr as Sotrudnik мы определяем что переменная mladSotr должна быть написана в формате (String, String, Integer), верно? Почему не срабатывает макрос?: Dim mladSotr as Sotrudnik mladSotr = ("Вася", "Пупкин", 1) msgbox mladSotr Ведь мы обьявили mladSotr согласно формата который задали в Type. Если бы мы инициализировали mladSotr as Integer а потом написали бы mladSotr = 1 msgbox mladSotr Оно ведь сработало бы. Ведь Integer - это по сути тоже тип данных, такой же как и Type. Как именно срабатывает команда Call Initsotr (mladshsotr, "Вася", "Пупкин", 1)? Я так понимаю что принцип связки этой команды с командой Initsotr(ByRef sotr As Sotrudnik, ByVal name As String, ByVal surname As String, ByVal doljnost As Integer) происходит чисто по порядку внесения. Т.е. Call Initsotr (mladshsotr, "Вася", "Пупкин", 1) - это типа маски куда куда поочередно подтягиваются данные из Initsotr? И почему в команде Initsotr(ByRef sotr As Sotrudnik, ByVal name As String, ByVal surname As String, ByVal doljnost As Integer) нельзя заменить ByRef на ByVal? Спасибо за ответы
@antonalechin7102
@antonalechin7102 3 жыл бұрын
Почему так нельзя? Зачем инициализировать имя, фамилию, должность? В чем причина? Type Sotrudnic name As String Surname As String Doljnost As Integer End Type Sub MainProc() Dim Mladhsotrudnic As Sotrudnic Dim Starshsord As Sotrudnic Call InitSotrudnika(Mladhsotrudnic) Call VyvodPoley(Mladhsotrudnic) Call VyvodPoley(Starshsord) End Sub Sub InitSotrudnika(ByRef sotr As Sotrudnic) sotr.Doljnost = 1 sotr.name = "vdvd" sotr.Surname = "efe"
@ognifer
@ognifer 7 жыл бұрын
В VBA можно давать имена, всех идентификаторов, на русском... А не маяться с транслитерацией....
@RobotoborPro
@RobotoborPro 7 жыл бұрын
Можно, но в общемировой практике программирования все пишут на английском.
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 55 МЛН
黑天使只对C罗有感觉#short #angel #clown
00:39
Super Beauty team
Рет қаралды 36 МЛН
Великовозрастный программист. Стоит ли идти в IT в 40 лет
8:17
Дилетант широкого профиля
Рет қаралды 18 М.
ЯЗЫК АССЕМБЛЕРА С НУЛЯ | #1 НАЧАЛО
54:43