Сборник статей по настройке Windows


Windows Script Host (WSH) - MS Office - часть 3


Эти сведения вам только в качестве информации к размышлению. А все что сверх этой статьи, изучается довольно просто: запускается Word (Excel), включается запись макроса, выполняются нужные вам действия, а потом на основе сгенерированного кода по аналогии пишется скрипт. Нелишним будет почитать и справку (надеюсь вы ее установили?). Замечу, что для работы с приложениями Офиса легче писать скрипты на VBScript, так как справка по встроенному VB сможет удовлетворить даже самым изысканным потребностям.

Именно таким методом (читая справку и анализируя записанные макросы), я сделал практически аналогичный предыдущим скрипт, работающий с Вордом:

//JScript //Создаем объект для работы с Вордом var wrd = new ActiveXObject("Word.Application"); //Создаем новый документ wrd.Documents.Add(); //Получаем указатель на активный документ adoc=wrd.ActiveDocument; //Указатель на область в документе myRange = adoc.Range(Start=0, End=0) //Активизируем Ворд wrd.Visible = true; wrd.Activate();

//Создаем таблицу с одной строкой и тремя столбцами tb0=adoc.tables.Add(Range=myRange, NumRows=1, NumColumns=3); //Задаем ширину столбцов tb0.Columns(1).Width = 80; tb0.Columns(2).Width = 160; tb0.Columns(3).Width = 160;

//Заполняем заголовок таблицы tb0.Cell(1,1).Range.InsertAfter("Название свойства"); tb0.Cell(1,2).Range.InsertAfter("Значение"); tb0.Cell(1,3).Range.InsertAfter("Описание");

//Счетчик строк intIndex = 2;

//Выводимая в строках таблицы информация Show("Name", WScript.Name, "Application Friendly Name"); Show("Version", WScript.Version, "Application Version"); Show("FullName", WScript.FullName, "Application Context: Fully Qualified Name"); Show("Path", WScript.Path, "Application Context: Path Only"); Show("Interactive", WScript.Interactive, "State of Interactive Mode");

//Ну и сама функция для вывода строк function Show(strName, strValue, strDesc) { tb0.Rows.Add(); tb0.Cell(intIndex, 1).Range.InsertAfter(strName); tb0.Cell(intIndex, 2).Range.InsertAfter(strValue); tb0.Cell(intIndex, 3).Range.InsertAfter(strDesc); intIndex++; }

Надеюсь, с задачей указания основного направления при работе с MS Office, мне удалось справиться. Дальше все зависит от вашего терпения и знания английского при переводе справки.

© 2003-2004 К. Тарасов, И. Чеботарев

http://www.whatis.ru/




Начало  Назад  Вперед



Книжный магазин