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

zloVdar

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

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

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

_MBK_

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

DukereD

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

Код:
    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 195
Реакции
10 846

Gad

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

Gad

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

zloVdar

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

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

Вложения

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

Gad

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

Вложения

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

_MBK_

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

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

_MBK_

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

dastin

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

zloVdar

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

_MBK_

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

Gad

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

Вложения

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