[ID CC-CC2022] PlaceAsset

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

aleksasha

Топикстартер
15 лет на форуме
Сообщения
316
Реакции
5
PlaceAsset довольно редко в примерах подается. Разобраться сам не могу. Пишу на VBScript.
Следующая строчка выдает ошибку:
Код:
...
Set myFound = myDoc.FindText
Set myLabel = myID.Libraries(1).Assets("Label4").PlaceAsset(myFound(1).InsertionPoints(1))
...

Argument Not Optional

а какой аргумент еще здесь требуется вставить?

При этом элемент библиотеки вставляется, но с этой ошибкой.
 
Vbs - хтоническое зло, отлаживать на нем программу - для сильных духом мазохистов.
Разбейте выражение во второй строке на несколько частей и локализуйте ошибку.
Или, если все и так работает, не заморачивайтесь, а просто поставьте заглушку на On Error
 
Последнее редактирование:
  • Спасибо
Реакции: aleksasha
Не ручаюсь, но возможно, во второй строке надо убрать Set, поскольку возвращается не объект, а массив.
 
  • Спасибо
Реакции: aleksasha
Не ручаюсь, но возможно, во второй строке надо убрать Set, поскольку возвращается не объект, а массив.
Навряд ли, тогда бы ошибка была совсем другая, да и не работало бы вообще
 
  • Спасибо
Реакции: aleksasha
Vbs - хтоническое зло, отлаживать на нем программу - для сильных духом мазохистов.
Разбейте выражение во второй строке на несколько частей и локализуйте ошибку.
Или, если все и так работает, не заморачивайтесь, а просто поставьте заглушку на On Error
Мне потом нужно применить к объекту стиль, поэтому On Error только ошибку уберет. :(
 
Не ручаюсь, но возможно, во второй строке надо убрать Set, поскольку возвращается не объект, а массив.
Без Set всё то же самое.
В сети только на такое наткнулся в плане примеров placeasset
JavaScript:
try {

   for (i = 0; i < myFound.length; i++) {

      myIcon = myLib.assets.itemByName("winieta_tr").placeAsset (myFound[i].insertionPoints[-2])[0];

      myIcon.appliedObjectStyle = myObjectStyle;

     // myFound[i].remove ();

      }

   }
Но этот пример на JS мне не помог.
 
Тогда ищите откуда ноги растут у ошибки разбивая
Вот так ошибки нет, но элемент библиотеки ставится в "произвольном" месте. А не в инсершн поинт.
Код:
myLabel = myID.Libraries(1).Assets("Label4").PlaceAsset myDoc
 
Ну разбейте строку:

Set mf=myFound( 1 )
Set ip=mf.InsertionPoints( 1 )
На что ругается?
 
  • Спасибо
Реакции: aleksasha
  • Спасибо
Реакции: Chiga и aleksasha
Наверное даже так можно
Set myFound = myDoc.FindText(False)
 
И подскажите мне неграмотному, что означает [0] перед точкой с запятой в строке JS:
JavaScript:
myIcon = myLib.assets.itemByName("winieta_tr").placeAsset (myFound[i].insertionPoints[-2])[0];
 
PlaceAsset возвращает массив
Присваивается первый элемент его
 
  • Спасибо
Реакции: aleksasha
PlaceAsset возвращает массив
Присваивается первый элемент его
Дык может и мне нужно это указать? Но я не пойму как именно здесь.
Код:
Set myLabel = myID.Libraries(1).Assets("Label4").PlaceAsset(myFound(1).InsertionPoints(1))
 
Дык может и мне нужно это указать? Но я не пойму как именно здесь.
Код:
Set myLabel = myID.Libraries(1).Assets("Label4").PlaceAsset(myFound(1).InsertionPoints(1))
Действительно. Добавил .Item(1) и ошибка пропала. Но теперь я получаю совсем не группу объектов из библиотеки, а string. А мне нужно после помещения элемента библиотеки присвоить ему объектный стиль. Может подскажете на каком этапе можно это сделать?
 
Последнее редактирование: