[ID CC-CC2022] Как объявить объект Индизайна в VBA?

  • Автор темы Автор темы hulk1776
  • Дата начала Дата начала

hulk1776

Топикстартер
15 лет на форуме
Сообщения
738
Реакции
21
Когда был Инди CS6, объявлял так
Код:
Sub test_Indi_ini()
Set myInd = CreateObject("InDesign.Application.CS6")
End Sub
А с СС2017 это вообще возможно? А то VBA пишет, что ActivX component не может...
В preferences VBA галочка стоит (см. картинку)
 

Вложения

  • Clipboard01.jpg
    Clipboard01.jpg
    20.7 КБ · Просм.: 807
  • Clipboard02.jpg
    Clipboard02.jpg
    35.6 КБ · Просм.: 695
А с чего вы взяли, что он именно так называется?
 
Умные люди советуют так
Код:
Set myInDesign = CreateObject("InDesign.Application.CC.2017")
 
Классно! Лет 5 не занимался VBAой. Открываются необозримые горизонты для безумной автоматизации))).
Спасибо.
 
можно и еще безумнее - на c# или python
постоянно типы проверять и приводить - уйма интересного )
 
На шарпе или питоне это хоть чем то можно оправдать - скажем, вызов индизайновского метода из программного пакета, который накоден на них.
А какой боевой стимул заставляет делать такой изврат из васика?
 
Документ от редакторов приходит в Ворде. Открыл документ и не выходя из MS его и верстаем. Ну почти не выходя. (так было на старой работе))). Как минимум можно добиться, чтобы после нажатия кнопки на какой-нибудь панели Ворда все бы вставилось, разлилось, отформатировалось, отбилось, прописались колонтитулы, вставились картинки и оформились красиво сноски. А в Индизайне только поравнять низ (ну что-то потаскать туда-сюда). Пока это приходится делать разными скриптами из верстки. Хотя даже это в разы быстрее, чем руками копошиться.
 
Вообще-то, с древних времён можно было не указывать версию приложения, если она у вас одна, либо вызывается непосредственно из.
InDesign.Application
Illustrator.Application
Этого было вполне достаточно. Или в СС2017 что-то изменилось?
А какой боевой стимул заставляет делать такой изврат из васика?
Странный вопрос, я бы даже сказал нелепый. А васик для Корела или Автокада – это как по-вашему? Сильный изврат или не очень?
 
Вообще-то, с древних времён можно было не указывать версию приложения, если она у вас одна, либо вызывается непосредственно из.
InDesign.Application
Illustrator.Application
Этого было вполне достаточно. Или в СС2017 что-то изменилось?

Странный вопрос, я бы даже сказал нелепый. А васик для Корела или Автокада – это как по-вашему? Сильный изврат или не очень?
Fog, извиняюсь, я сперва подумал на vbs, слабость простительная для старого пьющего человека ;)
 
Вообще-то, с древних времён можно было не указывать версию приложения, если она у вас одна, либо вызывается непосредственно из.
InDesign.Application
Illustrator.Application
Этого было вполне достаточно. Или в СС2017 что-то изменилось?
Проверил на домкомпе - действительно, объект создается и без указания номеров. Здорово!
 
Без указания номера загружается приложение по умолчанию, это легко проверить в реестре. Чтобы загрузить конкретную версию нужно указать номер. например: Adobe InDesign Application.СС.2015. Так было всегда.