Скрипт из СS2 перестал работать в CS6

Статус
Закрыто для дальнейших ответов.

instinct

Топикстартер
10 лет на форуме
Сообщения
123
Реакции
0
Необходимо, чтобы у найденных фраз в документе менялся трэкинг.

Вот фрагмент скрипта:

set myindesign = createobject ("InDesign.application.cs6")
set mydocument= myindesign.activedocument

myindesign.ChangePreferences.tracking = -20
myDocument.search "фраза1",,,""
myDocument.search "фраза2",,,""
myDocument.search "фраза3",,,""

Что нужно изменить, чтобы он заработал?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 235
Реакции
10 852
Эту тему читали?
И еще интересно было бы ошибку посмотреть.
А почему, если не секрет, такие заморочки с VB? Просто яву из ID запустить нельзя?
 

instinct

Топикстартер
10 лет на форуме
Сообщения
123
Реакции
0
А как яву запустить из ID? Я первый день с этой версией...
 

Вложения

  • Без имени-2.jpg
    Без имени-2.jpg
    67.4 КБ · Просм.: 561

instinct

Топикстартер
10 лет на форуме
Сообщения
123
Реакции
0
Кстати, если заменить строку "myindesign.ChangePreferences.tracking = -20" на "myindesign.ChangeTextPreferences.tracking = -20", то теперь ошибка указывает на строку ниже "myDocument.search "фраза1",,,"" ". Может названия команд поменялись с появлением новых версий?
 

Eugenyus

12 лет на форуме
Сообщения
1 960
Реакции
3 589
Серьёзные изменения произошли именно в версии CS3 по сравнению с версией CS2. Что касается конкретно автозамен, так на форуме во многих темах можно найти примеры того, как с 2007 года правильно составлять рабочий код. За синтаксис на VB не ручаюсь, но попробуйте дальше оформить так:
Код:
myindesign.findTextPreferences.findWhat = "фраза1"
myindesign.changeTextPreferences.changeTo = ""
myDocument.changeText
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
Мало кто знает, но VBScript в InDesign содержит библиотеки, позволяющие запускать скрипты, написанные для более ранних версий.
Конкретно в этом случае достаточно добавить в скрипт после строки
Код:
Set myInDesign = CreateObject("InDesign.Application")
строку
Код:
myInDesign.ScriptPreferences.Version = 3
и скрипт заработает магическим способом.
 
  • Спасибо
Реакции: bossrus и instinct

instinct

Топикстартер
10 лет на форуме
Сообщения
123
Реакции
0
Действительно магическим образом) Спасибо большое!
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 235
Реакции
10 852
Действительно магическим образом
Вообще-то, если бы вы ткнули в ссылку, которую я вам два дня назад кинул, Батушев там в третьей строке сверху советует именно это. Так что никакой магии - обычная внимательность.
 

Oleg Butrin

20 лет на форуме
Сообщения
1 990
Реакции
1 216
К сожалению, в указанном совете акцент делается на адаптацию скриптов, написанных на javascript. VBScript по традиции документирован довольно паршиво, да и мало кто вообще пользуется VBScript в InDesign — потому и возникают вопросы о том, «что делать, если любимый vbscript не работает в новой версии». Поэтому было бы неплохо внести соответствующее дополнение в закрепленную тему.
 
  • Спасибо
Реакции: Eugenyus
Статус
Закрыто для дальнейших ответов.