Высокие статистические технологии

Форум сайта семьи Орловых

Текущее время: Вс дек 22, 2024 11:12 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: многостраничный документ word в vb
СообщениеДобавлено: Ср май 24, 2006 2:54 pm 
Не в сети

Зарегистрирован: Ср май 24, 2006 2:50 pm
Сообщений: 1
как распечатать многостраничный документ word в vb , что бы был выбор с какой по какую страницу печатать ?
спасибо за помощь.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт май 25, 2006 6:46 pm 
Не в сети
Site Admin

Зарегистрирован: Пн сен 27, 2004 10:26 pm
Сообщений: 114
Цитата:
как распечатать многостраничный документ word в vb , что бы был выбор с какой по какую страницу печатать ?
спасибо за помощь.

Если Вы хотите просто выдать пользователю диалоговое окно "Печать", то это делается командой Dialogs и в простейшем случае выглядит так:
Код:
Set oknoPechat = Dialogs(wdDialogFilePrint)
oknoPechat.Show

Окно печати будет отображено на экране, и в нем можно будет указать диапазон страниц для распечатки.

Если же Вы желаете выполнить такую из программы, заранее каким-то образом определив границы диапазона печати, то воспользуйтесь методом PrintOut. Если его параметр Range установить в значение wdPrintRangeOfPages, тот в его другом параметре Pages можно указать диапазон печати точно так же, как в окне "Печать" - перечислив через запятую отдельные страницы или разделив дефисом номера первой и последней печатаемых страниц.

К примеру, страницы с 3 по 10 текущего документа распечатает такая команда:
Код:
ActiveDocument.PrintOut Range:=wdPrintRangeOfPages, Pages:="3-10"

а первую, третью и с пятой по седьмую - такая:
Код:
ActiveDocument.PrintOut Range:=wdPrintRangeOfPages, Pages:="1, 3, 5-7"

Обратите внимание, что значением параметра Pages может быть только строка, поэтому если вы желаете включить в это значение числовые переменные, то вначале превратите их в строковые командой Str() и сформируйте текстовую строку из них, включив между ними дефис с помощью оператора "+".
К примеру, если ранее в программе номера первой и последней страниц диапазона печати записывались в переменные a и b, то команда должна выглядеть как
Код:
ActiveDocument.PrintOut Range:=wdPrintRangeOfPages, Pages:=Str(a)+"-"+Str(b)

Подробнее о методе PrintOut читайте в Справке VBA.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB