[CDR 2017-2021] Очистка стилей объектов

zloVdar

Топикстартер
10 лет на форуме
Сообщения
36
Реакции
9
Приветствую, коллеги! Кто силен в VBA, есть способ разом убить все стили без перебора массива стилей?
От заказчика постоянно приходят файлы с огромным количеством стилей объектов (18000+) и хотелось бы их как-то разом грохать.

Перебор
Код:
ActiveDocument.StyleSheet.AllStyleSets(1).Delete
работает неприемлемо долго.

Спасает пересохранение в CMX, но может есть способ проще?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
На ум приходит разве что наваять патч типа ChangeCLOL
 

DukereD

макрософил
Сообщения
459
Реакции
111
а если перед этим оптимизацию включить? быстрее же должен в любом случае работать
я делаю вот так

Код:
    Application.Refresh
    Application.Optimization = True

ActiveDocument.StyleSheet.AllStyleSets(1).Delete

    Application.Optimization = False
    Application.Refresh
 

zloVdar

Топикстартер
10 лет на форуме
Сообщения
36
Реакции
9
а если перед этим оптимизацию включить? быстрее же должен в любом случае работать
я делаю вот так

Код:
    Application.Refresh
    Application.Optimization = True

ActiveDocument.StyleSheet.AllStyleSets(1).Delete

    Application.Optimization = False
    Application.Refresh
Нет, не спасает.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835

Gad

Сообщения
2 971
Реакции
1 405
А если привести все стили документа к своим по умолчанию? Для этого даже корел вроде как не нужен.. :)
 

Gad

Сообщения
2 971
Реакции
1 405
Ну идея такова, чтобы создать из своего корела пустой файлик, вытащить из него styles\document.cdss и запихивать с заменой его в присланный.
Можете свой файл где
количеством стилей объектов (18000+)
выложить без контента? На опыты:)
 

zloVdar

Топикстартер
10 лет на форуме
Сообщения
36
Реакции
9
Ну идея такова, чтобы создать из своего корела пустой файлик, вытащить из него styles\document.cdss и запихивать с заменой его в присланный.
Можете свой файл где

выложить без контента? На опыты:)
Вот вам кадавр
 

Вложения

  • Печать 26.05.2021.rar
    1.4 МБ · Просм.: 155
  • Спасибо
Реакции: DukereD

Gad

Сообщения
2 971
Реакции
1 405
Держите назад после мутаций :)
Вроде все ок...
 

Вложения

  • Печать 26.05.2021.cdr.zip
    1.3 МБ · Просм.: 184
Последнее редактирование:
  • Спасибо
Реакции: dastin

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Ну идея такова, чтобы создать из своего корела пустой файлик, вытащить из него styles\document.cdss и запихивать с заменой его в присланный.
Можете свой файл где

выложить без контента? На опыты:)
Это ты чтото больно мудреное придумал. По моему все ж проще подправить сам корел чтоб он стили не читал вообще из файла
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Одну букву поправить в имени, не?
 

dastin

Некромант-любитель
12 лет на форуме
Сообщения
2 131
Реакции
2 027
Sehr Gud, Waldemar ... 100 Мб стилей это сильно
 

zloVdar

Топикстартер
10 лет на форуме
Сообщения
36
Реакции
9
Держите назад после мутаций :)
Вроде все ок...
Вопрос был не в том, чтоб "вылечить" этот файл, а в том, что такие файлы каждый раз и хотелось бы автоматическое решение. А вот с заменой файла стилей решение рабочее, спасибо!
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835

Gad

Сообщения
2 971
Реакции
1 405
Раз уж сделал, выложу готовое :)
Распаковать в какую удобно папку, сделать ярлык на .cmd файлик, и тащить на него скопом файлы для очистки стилей :)
 

Вложения

  • remove_styles_CDR.zip
    898.2 КБ · Просм.: 178
  • Спасибо
Реакции: zloVdar