Це відео не доступне.
Перепрошуємо.
Стрим: Пишем макрос для Corel Draw. Основы программирования на VBA
Вставка
- Опубліковано 10 кві 2020
- Стрим при поддержки компании MCLaser mclaser mclaser.ru
Текст макросов
Sub rotate_90PO()
ActiveSelectionRange.Rotate -90#
End Sub
Sub rotate_90PR()
ActiveSelectionRange.Rotate 90#
End Sub
Sub rotate_180()
ActiveSelectionRange.Rotate 180#
End Sub
Sub attach_left()
attach ("left")
End Sub
Sub attach_right()
attach ("right")
End Sub
Sub attach_top()
attach ("top")
End Sub
Sub attach_bottom()
attach ("bottom")
End Sub
Private Sub attach(side)
Set OS = ActiveSelection.Shapes
Set fir = OS.First
For Each s In OS
If Not s Is fir Then
Select Case side
Case "right": s.LeftX = fir.RightX
Case "left": s.RightX = fir.LeftX
Case "top": s.BottomY = fir.TopY
Case "bottom": s.TopY = fir.BottomY
End Select
End If
Next s
End Sub
Донат на стриме: www.donational...
в ВК: app5727...
Поддержи проект Деревяшкина и получи эксклюзивную панель макросов и ранний доступ к видео и эксклюзивным материалам!
на Бусти: boosty.to/wrwo...
на Патреоне: / mrwoodman
Бесплатная мини панель: yadi.sk/d/7HsU...
Видео про полную панель с генеретором коробок: • Woodman Panel 2.0 Гене...
Ищите нас так же в сети
dukered (личный)
laser_man (группа)
/ laserman_minsk
etsy.com/shop/...
Ну наконец-то наткнулся на толковый урок по макросам для начинающих!👍👍👍
у меня там целый плейлист по этой теме )
@@mrWoodman , спасибо, посмотрим, по лайкаем
Тема макросов очень интересна!!!! Давайте более подробно её рассматривать!!! Было бы здорово начать с очень простых действий постепенно усложнять!
Спасибо большое!!!
Есть такой видос ua-cam.com/video/sODNSu9Y1EM/v-deo.html
И есть целый плейлист про VBA.
Но планирую цикл видео с нуля про программирование на vba
@@mrWoodman Да, я уже всё посмотрела! Спасибо огромное!!!👍👍👍 Но хотелось бы ещё..😅🤭
@@mrWoodman Super
Macros free download teacher ❤❤❤❤❤❤
Спасибо! Я тоже действующий программист (Delphi) и пришел к лазерной резке 3 года назад. Хотел понять синтаксис VB вообще и особенности его для Corel (пока без конкретной задачи). По урокам такого мастера это будет проще, интереснее и эффективнее. Из личного опыта добавлю. Если не начать писать код, а только смотреть подобное образовательное видео, толку не будет никакого и через неделю другую все забудется. Поэтому наставление : "Творите!" как нельзя кстати в контексте изучения языка программирования.
Ждем продолжения!
Какие темы раскрыть? Углубиться в программирование? Что показать?
Так как с задачами определенности нет. Но что могу сказать. Математические алгоритмы написать не проблема. Нас же этому учили :). Но больше всего интересны особенности "наречия" этого языка VB для Corel. Классы, методы. И способы их использования.
И не стоит забывать про тех кто делает первые шаги в программировании! Я, однозначно, поддержу, если будут видео и с основами VB.
Кажется Кнут сказал: "В программировании как и в жизни, прежде чем научиться бегать, нужно научиться ползать!"
@@mrWoodman Смог ответ написать самому себе... А не на сообщение с вопросом :) Бывает. Но думаю дойдет!
@@user-mn5ty6gx7i ну тут рецепт стандартный. курить мануалы. никак иначе ) рассказать можно общий принцип.. а уж все методы и свойства это или помнить надо или в мануалах смотреть.
@@mrWoodman Согласен! И опять же нужно иметь живую задачу под которую все это изучать. Изучать ради изучения - это тупик.
Но все видео на канале и на boosty смотрю с большим удовольствием! Уроки по Corel очень полезные. И как раз им нахожу практическое применение, что позволяет не забывать полученные знания.
По моему опыту, VBA многими недооценен. Не только применительно к Corel Draw, но и в тех же приложениях MS Office. А ведь с его помощью можно быстро и удобно писать скрипты, существенно упрощающие рутинные операции.
Согласен. Именно так я делаю))) но чтобы писать нужно программистим быть или самому выучить алглритмы
@@mrWoodman Удобно, что в Corel можно макрорекордером записывать, как в Excel. В том же Worde или PowerPoint рекордера нет и только через документацию или примеры в интернете.
Спасибо!
Не совсем понял зачем выставлять единицы измерения микроны, а потом переводить в миллиметры?
Проще же выставить сразу миллиметры.
да. можно и сразу миллиметры, но в целом неплохо показать и различные варианты это все же обучающее видео а не прямая инструкция к действию.
Помогите пажалуйсто. Не могу перенести переменную из одного макроса в другой. Ну или из макроса в панель. Н еподскажите как это сделать?
Что значит "перенести переменную"? вы хотите какое-то значение или объект использовать в другом макросе? Тут 2 варианта. первый простой но не очень правильный - использование глобальной переменной. и второй более правильный передача значения в функцию. Т.е. принимающий макрос должен быть в виде функции с параметрами.
@@mrWoodman Помогло. Спасибо за ответ!
да, круто, конечно. Ноя точно в это не полезу. Из функций понравилось - выделить по цветам и гибкий рез с размещением пазов по кривой!
не все так страшно ) если любой язык программирования знаешь то тут не сложно разобраться
@@mrWoodman хехе, програмированием никогда не занимался. .... если на гитаре пару аккордов знаешь, то в принципе, орган освоить реально!
@@RomanovDR ну не совсем верное сравнение. :)) языки по сути похожи синтакиси наптсания разный. А инсьрументы это навык
@@mrWoodman ну, почему же не верное сравнение? и там и там 12 нот и построение аккордов примерно одинаковое, а херачить "голуби летят над нащей зоной" и Фугу Dm это уже навык! )
@@RomanovDR ну порог вхождения в музыку выше намного. Язык достаточно "пару аккордов знать" и можно писать. А в музыке посложней все же. Слух нужен или от природы или годами развитый
Подскажите как мне сделать макрос по экспорту в JPG выбранных контуров? Нужно экспортировать около 100 контуров, руками лень :)
один раз записать действие экспорта и запихнуть в цикл с перебором всех элементов. Посмотрите на моем канале есть подобные видео. Ну и в целом у меня в панели макросов уже все подобное реализовано.
@@mrWoodman почему то Команды «экспорт» с выбором настроек не записывается в макрос вообще, после записи в теле макроса пусто, только строки начала и конца кода. Если вам не затруднит, не могли бы скинуть ссылку что за панель макросов?
@@lsssAAaAa моя панель макросов )) ссылки в описании под любым видео. ну и на канале в плейлисте "панель макросов" можно найти видео.
как это не записывается? всё записывается прекрасно.
вот код - изменена толко одна строчка - остальное записано макросом
Sub Save_dxf()
If Len(ActiveDocument.FileName) > 1 Then
Dim OrigSelection As ShapeRange
Set OrigSelection = ActiveSelectionRange
OrigSelection.CreateSelection
Dim expopt As StructExportOptions
Set expopt = CreateStructExportOptions
expopt.UseColorProfile = False
Set expflt = ActiveDocument.ExportEx(ActiveDocument.FilePath & Mid(ActiveDocument.Name, 1, Len(ActiveDocument.Name) - 4) & ".dxf", cdrDXF, cdrSelection, expopt)
expflt.finish
End If
End Sub
@@mrWoodman спасибо большое
@@lsssAAaAa подобный код гуглится за 3 минуты а еще лучше советую читать мануалы по языку. там очень много простых примеров как раз под простые задачи.
Доброго Вам. А подскажите, как заполнить ComboBox названиями файлов, которые находятся в папке с макросом или подпапках. Заранее благодарю.
Для сканирования директории есть функция dir а каждый (нужный) файл функцией AddItem добавить в комбобокс.
@@mrWoodman спасибо за ответ, пришел домой, стал копать и нашел вот это - Application.GMSManager.UserGMSPath - папка GMS для этого конкретного пользователя, то что нужно было, где лежат макросы.
@@slukka79 да. я такой же способ использую для чтения INI файла в панели макросов
Здравствуйте. Полезное видео. Подскажите как сделать макрос который растягивает нарисованный мной узор на всю площадь любой выбранной фигуры?
Задать свойства sizeheight и sizewidth согласно соответствующим параметрам другой фигуры. Или можно использовать setsize.
Например.
Set os=activeselectionrange
Set s1 = os.shapes(1)
Set s2 = os.shapes(2)
s1.sizeheight = s2.sizeheight
s1.sizewidth = s2.sizewidth
Советую код не копировать а понять и самому под свои нужды переписать. Во-первых и вам полезней для понимания, а во-вторых я его писал на мобиле, так что могут быть грамматические ошибки, но смысл я надеюсь понятен :)))
@@mrWoodman блин вот у меня получается сделать это стандартными средствами, но потом я не могу ничего сделать с этим узором. Потому что корел воспринимает его как заливку , а не как вектор.
@@MakDVa так смотря какая заливка и что с ней нужно делать. Если вам нужно увеличить размер но чтобы узор внутри не увеличился, то это "несколько" сложней операция
@@mrWoodman да, вот так мне и надо. Я уже понял, что стандартными средствами не обойтись. Чтобы при этом узор вектором остался. Буду копать
Запиши макрос на фасад
чтобы записать макрос надо разбираться в теме.. а я с фасадами не знаком от слова совсем.. никаких тонкостей не знаю. да и куча подобных макросов уже имеется
Непонятные цифры в макросе это дюймы
Где не понятно? какие дюймы? мы что в америке живем? все нормальные люди меряют в мм.
@@mrWoodman
Перед тем как вы изменили на микрометры
@антон магарн где? микрометры мне удобнее использовать в вычисслениях в макросе в самом коде. а в интерфейсе только мм. а в коде сверху четко прописаны единицы какие используются. любые можно выбрать . это кому как удобнее
умножаешь на 10 000 и получешь мм.