Дополнительные свойства объекта SpreadSheet
Рассмотрим те свойства, которые приобрел объект SpreadSheet. Многие из них связаны с главным предназначением этого объекта - обеспечением возможности интерактивной работы с электронной таблицей на Web-страницах.
- ActivePane - это свойство заменяет свойство ActiveWindow и возвращает объект Pane - активное подокно, в котором размещается электронная таблица.
- AllowPropertyToolbox - булево свойство, позволяющее включать или отключать панель свойств в период выполнения.
- Управление видимыми размерами электронной таблицы. Ряд свойств позволяют управлять видимыми размерами. Свойство ViewableRange позволяет задать объект Range, определяющий область электронной таблицы, допустимую для просмотра пользователем. Остальная область будет для него скрыта. Свойства MaxWidth, MaxHeight определяют максимальные размеры видимой части электронной таблицы по ширине и высоте. Они могут быть заданы либо в пикселях, либо в процентах от величины контейнера, содержащего электронную таблицу. Наконец, булево свойство AutoFit позволяет наилучшим способом отобразить допустимую для просмотра область. Если его значение задано, как True, то электронная таблица будет отображать допустимую для просмотра область со скроллингом или без него в зависимости от числа строк и столбцов области и значений MaxWidth и MaxHeight. Вот пример установки этих свойств в обработчике события OnLoad:
<script language=vbscript> Sub Window_onLoad() 'Инициализация параметров электронной таблицы With BooKFour_1787_WebCalc .ViewableRange = "A1:G10" .MaxWidth = "90%" .MaxHeight = "90%" .AutoFit = True End With End Sub </script>
Этот код я добавил в конец тега <body> html-кода, полученного при сохранении рабочего листа книги Excel с именем BookFour в виде интерактивной Web-страницы. Событие OnLoad возникает при загрузке Web-страницы в браузер, соответственно вызывается обработчик этого события. Поэтому при открытии страницы будут установлены параметры, задающие область просмотра и то, как она будет отображаться. Вот как выглядит эта страница, открытая в Internet Explorer:
увеличить изображение
Рис. 10.4. Управление отображением области, допустимой для просмотра
Заметьте, если уменьшить значение параметров MaxWidth и MaxHeight, например, до 50%, то область отображения электронной таблицы уменьшится, и появятся полосы, позволяющие осуществлять скроллинг внутри области. - Свойство BuildNumber задает номер версии компонента.
- Булево свойство CanUndo со статусом "только для чтения" возвращает значение True, если предыдущее действие может быть отменено.
- Работа с именованными константами в VBScript. Свойство Constants позволяет справиться с проблемой типизированных констант в VBScript. Язык VBScript, как известно, не типизирован. С другой стороны, константы, используемые при работе с объектами, типизированы и принадлежат типам, задаваемым соответствующими перечислениями. Свойство Constants позволяет обойти ограничение VBScript и дает возможность работы с именованными константами, принадлежащим различным перечислениям. Это свойство задает набор из всех именованных констант VB. После вызова свойства достаточно указать через точку имя константы, чтобы работать с ней в VBScript также как и в VB /VBA . Вот небольшой пример кода на использование трех последних свойств:
Dim myc 'Задание набора констант Set myc = .Constants .Range("D5:F8").Borders.Weight = myc.owcLineWeightThick .Range("D5:F8").Borders.Color = "Green" .TitleBar.Caption = "OWC SpreadSheet Build - " & .BuildNumber .TitleBar.Font.Color = "Green" If .CanUndo Then .TitleBar.Font.Color = RGB(255,125,125)
Этот код я добавил в предыдущую процедуру Window_onLoad. Не буду приводить рисунка, демонстрирующего изменения внешнего вида электронной таблицы. Замечу, что все отработало должным образом. Свойство CanUndo вернуло значение True, так что цвет в заголовке окончательно был установлен с использованием функции RGB. - Управление данными. Я уже говорил о вводе-выводе данных в электронную таблицу. Сейчас я более подробно расскажу о свойствах компонента SpreadSheet, предназначенных для управления вводом и выводом данных. Свойство CSVData позволяет задать строку, являющуюся источником данных для ввода в ячейки электронной таблицы. Данные в строке должны разделяться символом "," (запятая). Свойство позволяет, как получать данные, так и возвращать строку данных. Свойство CSVURL также устанавливает или возвращает данные, разделенные символом "запятая", но источник данных в этом случае задается URL-адресом. Свойство HTMLData позволяет получать или возвращать данные, представленные в HTML-таблице. Свойство HTMLURL позволяет работать с данными такого же формата, но источник данных задается URL-адресом. Это может быть, например, адрес Web-страницы, на которой расположена HTML-таблица. Источником может быть и страница документа Excel 2000, сохраненная как интерактивная Web-страница. Если одновременно заданы несколько из этих свойств, то возникает дилемма, откуда брать данные. Свойство DataType позволяет решить данную проблему. Четыре возможных значения этого свойства совпадают с именами четырех рассмотренных только что свойств, задающих источники данных. Значение DataType однозначно определяет, каким свойством следует пользоваться для доставки данных.
- Display-свойства. Серия этих свойств позволяет отображать те или иные элементы электронной таблицы - заголовки столбцов и строк, сетку, вертикальную и горизонтальную полосу прокрутки, панель свойств и панель инструментов, заголовок таблицы. Вот их перечисление: DisplayColHeaders, DisplayRowHeaders, DisplayGridlines, DisplayHorizontalScrollBar, DisplayVerticalScrollBar, DisplayPropertyToolbox, DisplayToolbar, DisplayTitlebar. Конечно же, всеми этими элементами можно управлять и в объектной модели Excel, но там они не являются свойствами объекта Application.
- Enable-свойства. Серия этих свойств позволяет включать или отключать те или иные возможности электронной таблицы - автоматическое вычисление, возможность отката. Вот эти свойства: EnableAutoCalculate, EnableUndo.
- ScreenUpdating - булево свойство, позволяющее отключить перерисовку экрана при обновлении данных. Полезно пользоваться этим свойством при программном обновлении данных. До начала обновления установить это свойство, как False, затем обновить все необходимые данные, затем установить для свойства значение True, чтобы перерисовать экран, когда все данные изменились.
Практически я рассмотрел все свойства объекта SpreadSheet. Как видите, их немало, и есть новые свойства, весьма полезные при программной работе с интерактивными документами.