Author |
Topic |
|
oleg753
26 Posts |
Posted - 03/10/2010 : 13:34:59
|
В экселе я вбиваю в ячейку текстовую информацию. По запуску макроса открывается визио и вставляется шейп. У него свойства в т.ч. текстовое поле, в котором должен быть тот текст из экселевской ячейки. Ячейка в экселе имеет текстовый формат, данные шейпа тоже.
Dim index_entr As String index_entr = Worksheets("Номер листа").Cells(16, j).Value 'это из экселя Set elements(i) = SetRemark(stnObj, pagObj, index_entr, 45,17)
Public Function SetRemark(docObj As Visio.Document, pagObj As Visio.Page, index_entr, x As Single, y As Single) As Visio.Shape Dim mastObj As Visio.Master Set mastObj = docObj.Masters("Master.35") Set SetRem = pagObj.Drop(mastObj, x, y) Dim cell1 As Visio.Cell Set cell1 = SetRem.CellsSRC(visSectionProp, visRowProp + 0, visCustPropsValue) cell1.Formula = index_entr End Function
Ошибка на строке cell1.Formula = index_entr С цифрами проблем нет, но вот что я делаю неправильно с текстом?
|
|
Tumanov
Russia
1198 Posts |
Posted - 03/10/2010 : 15:30:25
|
Не учитываете, что текст нужно еще раз упаковывать в кавычки. А при обратной передаче лишние кавычки вычищать. Такая вот особенность. cell1.Formula = Chr(34) & index_entr & Chr(34)
|
|
|
oleg753
26 Posts |
Posted - 03/10/2010 : 16:03:34
|
Огромное спасибо г-ну Tumanov'у! Сам бы долго еще копался. |
|
|
bdfy
Belarus
267 Posts |
|
|
Topic |
|
|
|