helpf.pro
Регистрация

v8: 1с и MS Word - печать определённых страниц

Voittamaton
03.10.2011 14:46Прочитано: 9345
Доброго времени суток!
Возник такой вопрос - нужно программно открыть документ MS Word и распечатать определённые страницы. Нужно вот для чего: в медицинском центре на каждый день есть массив договоров для печати. В каждом договоре по 2 листа. Печать с обеих сторон. Таким образом сначала нужно распечатать все нечётные страницы (всех договоров), а затем, когда пользователь перевернёт бумагу, все чётные.
С открытием документов не возникает проблем - в интернете полно информации. Что же касательно второй части вопроса - печати только определённых страниц, то бьюсь уже долгое время.
Благодарю за помощь!
Yandex
Возможно, вас также заинтересует
Реклама на портале
typeharley
03.10.2011 16:47Ответ № 1
Не совсем красиво, но можно так:

Код 1C v 8.2 УП
 	Страницы = "";
Для i = 1 По КолСтраниц Цикл
Если Цел(i/2) = i/2 Тогда
Страницы = Страницы + СокрЛП(i);
КонецЕсли;
КонецЦикла;
Документ.PrintOut(0,0,"4","","","",0,1,Страницы);
typeharley
03.10.2011 16:49Ответ № 2
А вообще за эту настройку отвечает 6-ой параметр процедуры PrintOut. Вот какое значение ей передать!!??
Voittamaton
03.10.2011 18:48Ответ № 3
(1) typeharley
Спасибо за ответ! Но возникают следующие вопросы:
1) Какая функция возвращает количество страниц в документе?
2) В каком формате должна получиться строка "Страницы"? Может там страницы через запятую должны идти?
3) Может знаете, где взять описание для свойств и методов объекта "Word.Basic" или "Word.Application", а там заодно и метода PrintOut ) Если не ошибаюсь, то этот метод есть в "Word.Application", но его нет в "Word.Basic".
Спасибо! )
typeharley
03.10.2011 19:28Ответ № 4
1) .....ммм, вроде так ActiveDocument.ActiveWindow.Panes(1).Pages.Count().
2) Да, это я загнался немного, правильно через запятую, простите меня )))
3) Конечно "Word.Application" имеется ввиду.
Касательно твоего вопроса, можно здесь: http://support.microsoft.com/kb/176069/ru,
Из этого ресурса: https://help1c.com/faq/view/1031.html
https://help1c.com/help/view/4316.html
Много ресурсов по OLE офиса. По долгу службы мне больше интересен Excel. Могу завтра выложить, что-нить тока завтра. Если не знаешь методы: выполняй их вручную с записью макроса, потом открывай basic и смотри методы.
Изменено 03.10.11 19:37:19
Voittamaton
04.10.2011 08:35Ответ № 5
(4) typeharley, огромное спасибо! Выручили! )
Метод PrintOut() решил все проблемы :-) Заработал и с "Word.Basic".
Спасибо и за предоставленные ресурсы!
По Экселю тоже было бы интересно почитать, так что выкладывайте! :-)
Подсказка:Вы можете добавить любую страничку в Социальные закладки щелкнув по значку соцсетей (в вверху)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.