All Forums
 Категория Visio
 Форум Вопросы и ответы
 Formula, FormulaU
Author Previous Topic Topic Next Topic  

mers

Russia
159 Posts

Posted - 11/21/2006 :  10:51:17
Здравствуйте.

shape.get_Cells(<ячейка>).Formula
shape.get_Cells(<ячейка>).FormulaU

чем отличаются? Что вообще означает буква U?

З.Ы. Хелп читал, в интернете полазил, поэтому не нада меня туда отсылать. Всегда думал что понимаю что это такое.. но вот оказывается нет :(. Не буду навязывать свое мнение, поэтому объясните на пальцах, чем отличаются?

Tumanov

Russia
1198 Posts

Posted - 11/21/2006 :  19:28:50
На пальцах, как я это сейчас понимаю...
Код
ActivePage.Shapes(1).Cells("Width").Formula = "Guard(If(True,2,4))"
дает exception, потому что у меня разделителем является точка с запятой и строчка должны выглядеть как
ActivePage.Shapes(1).Cells("Width").Formula = "Guard(If(True;2;4))"

А вот код
ActivePage.Shapes(1).Cells("Width").FormulaU = "Guard(If(True,2,4))"
срабатывает нормально, потому что универсальным разделителем является как раз запятая. И такой код должен работать в любой стране, независимо от того, что там принято за разделитель.
Примерно то же самое относится и к другим знакам и разделителям, которые могут принимать разные значения.

Теперь рассказывайте, что Вам в этом не нравится или чего я не заметил :)
Go to Top of Page

mers

Russia
159 Posts

Posted - 11/27/2006 :  10:26:05
1. :) FormulaU и Formula понимал правильно. С этим все нормально.
2. Проблема была (и есть) в другом (не сразу это понял, сначала грешил именно на эти оператры.
Вот такой кусок кода.
shape.AddNamedRow(section, rowName, 0);
В таблицах шейпов разных типов я создаю различные строки.
У одних в UserCells строку "Type", у других в CustomProperties строку "type".
В первом случае он мне почему-то начал создавать строки с названием "type", хотя
rowName = "Type"
Решение этой проблемы вроде бы нашел
short row = shape.AddNamedRow(section, rowName, 0);
shape.get_CellsSRC(section, row, 0).RowNameU = rowName;
Но при этом во втором случае он стал соответсвенно создавать строку "Type" вместо "type". Вот до сих пор, не знаю как быть. Как сделать так чтобы он создавал именно то что мне нужно.
Что интересно, раньше такого не было. Отчего это появилось, понять не могу.

Edited by - mers on 11/27/2006 11:27:08
Go to Top of Page
  Previous Topic Topic Next Topic  
Данный сайт является архивом форума visio.artberg.ru, который был закрыт в связи с переходом на новую платформу visio.getbb.ru
Все материалы доступны только для чтения! Если у вас появились вопросы, или вы хотите что-то обсудить, связанное с Visio, обращайтесь на новый форум!
Архив был создан благодаря совместным усилиям Генадия Туманова @Tumanov (visio.artberg.ru), Александра ака @Surrogate (visio.getbb.ru), и Николая Белых @nbelyh (unmanagedvisio.com)