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

VeryOldMan

5 Posts

Posted - 04/02/2009 :  07:58:22
В отличие от Word & Excel в Visio отсутствуют глобальные переменные типа ActiveDocument.Variables, в которых можно было бы сохранить некоторую информацию, необходимую для программно создаваемого документа Visio.
Попытки сохранения этой информации следующим путем не увенчались успехом:
ActivePage.PageSheet.AddSection (6)
ActivePage.PageSheet.Cells("Scratch.X1").Formula = """123"""
Однако если перед выполнением строки:
ActivePage.PageSheet.Cells("Scratch.X1").Formula = """123"""
вручную выделить и ввести что-либо в секцию Scratch, например, Enter,
данная строка кода работает
Прошу сообщить, как обойти ручной ввод программно

Tumanov

Russia
1198 Posts

Posted - 04/02/2009 :  20:08:43
Можно после создания секции добавить к ней строку. И работать не с именами, а с индексами.
Вот такой код создаст секцию Scratch и введет в первые две ячейки первой строки 12 дюймов и строку "12" соответственно.
Sub ttt()
ActivePage.PageSheet.AddSection (6)
n = ActivePage.PageSheet.AddRow(6, 1, 0)
ActivePage.PageSheet.CellsSRC(6, 0, 0) = "12"
ActivePage.PageSheet.CellsSRC(6, 0, 1).Formula = """12"""
End Sub
Можно еще защиту от ошибок накручивать - проверить не существует ли уже такая секция, если существует, то сколько в ней строк и т.д.
Go to Top of Page

VeryOldMan

5 Posts

Posted - 04/03/2009 :  06:59:11
Я не сразу понял, что при создании Section, автоматически образованная в ней Row лишь видимость, и лишь вчера выяснил, что при добавлении строки if ActivePage.PageSheet.AddRow(6,1,0)=0 then
все прекрасно получается.
Но все равно, большое спасибо.
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)