Поиск и замена текста в COREL DRAW с помощью макроса
Появилась задача
Пройти по листу COREL DRAW, найти все текстовые элементы, найти в них текст и заменить на некоторый другой.
Возьмем, к примеру, вот такой файл, состоящий из кривых и фигурного текста. У нас есть числа, к ним надо добавить 0 в конце (умножить на 10). Это на самом деле очень просто, ниже код, который можно повесить на кнопку макроса:
Dim sr As ShapeRange Dim s As Shape Dim str As String Set sr = ActiveSelectionRange For Each s In sr If s.Type = cdrTextShape Then str = s.Text.Story str = str + "0" s.Text.Story = str End If Next s MsgBox "ok!"Что он делает:
- проходит по всем выбранным элементам
- определяет является ли шейп текстом
- берет текст шейпа
- прибавляет к тексту 0
- устанавливает новый текст элемента
Работа с Corel Draw не является моей основной специальностью, да даже и дополнительной её назвать сложно, но все же иногда приходится помогать заказникам решать вот такие несложные задачи.

Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Читайте также:
Обсудить или задать вопрос по этой или любой другой теме можно на нашем форуме