Как передать значение поля в процедуру из библиотеке скриптов

  • Автор темы rm2005
  • Дата начала
Статус
Закрыто для дальнейших ответов.
R

rm2005

#1
Здавствуйте, у меня вот такой вопрос

Подцепил директивой use "MyProc" процедуру из библиотеке скриптов


Код:
sub MyProc(MyVal as variant) 
'тут чего-то делаем
end sub
вызываю

Код:
Set CurrentUIDoc = CurrentUIWorkspace.CurrentDocument
Set CurrentDoc = CurrentUIDoc.Document
'MyID - поле документа
Call MyProc(CurrentDoc.MyID) - здесь ошибка несовпадения типов "Type Mismatch"
Получилось передать значение только изменив параметр в процедуре на стринг и передав значение поля через промежуточную строковую переменную. Но это мне кажется как-то криво.

Подскажите, как лучше сделать.
 
H

Hedg

#2
а что мешает использовать функцию преобразования в cтроку Cstr ???
 
R

rm2005

#3
Для: Hedg
Хотелось бы передавать ссылку на поле или его значение, а уже приобразовывать внутри процедуры. Можно ли так делать?
 
R

rm2005

#5
Для: Hedg
Поменял
Код:
sub MyProc(MyVal as string)
Вызываю
Код:
Call MyProc(Cstr(CurrentDoc.MyID))
Всё равно "Type Mismatch"
 
O

Ogion7

#7
<!--QuoteBegin-rm2005+24:04:2007, 14:54 -->
<span class="vbquote">(rm2005 @ 24:04:2007, 14:54 )</span><!--QuoteEBegin-->Хотелось бы передавать ссылку на поле или его значение, а уже приобразовывать внутри процедуры. Можно ли так делать?
[snapback]63279" rel="nofollow" target="_blank[/snapback]​
[/quote]
только если передать процедуре сам документ
 
R

rm2005

#8
Для: Hedg
Спасибо, так работает. А если в поле состоит из 2 строк, можно ли передать?
Call MyProc(Cstr(CurrentDoc.MyID.text))
не работает.

Для: Ogion7
Буду делать через документ.
 
H

Hedg

#9
Для: rm2005
Если строк больше чем одна, то так работаь не будет.
 
Статус
Закрыто для дальнейших ответов.