Задача по печати диапазона страниц. Есть код по получению объекта и все нормально печатает для ПриложениеВорд.Application.PrintOut() - все страницы идут на печать , все работает.
Выяснил что есть параметры для PrintOut (Background, Append, Range, OutputFileName, From, To, Item, Copies, Pages, PageType, PrintToFile, Collate, FileName). Нас интересует третий - Range, у него есть свои :

Range - необязательный параметр. Диапазон страницы. Может быть одна из следующих WdPrintOutRange констант:

WdPrintAllDocument - печатать весь документ,

WdPrintCurrentPage - печатать текущую страницу,

WdPrintFromTo - печать выбранных страниц,

WdPrintRangeOfPages - печать диапазона страниц,

WdPrintSelection - печать выбранного фрагмента.

Как мне в код 1с Вставить WdPrintFromTo . Пробовал : ПриложениеВорд.Application.PrintOut(,,"4",,,,,,Объект.СтраницыРедактирования); - идет на печать но ничего не выходит - пустая очередь печати.
---
В Вашем вопросе уже есть ответ. Значение константы в этом случае будет = 3, только тип параметра - число, а не строка. Осталось еще указать диапазон.
---
Сделал вот так :
```1c
    ПриложениеВорд.Application.PrintOut(,,3,,Строка(Объект.СтраницыРедактированияОт),Строка(Объект.СтраницыРедактированияДо),,,);
```

страницы редактирования конечно же строки, пробовал и числа - выдавало ошибку. Такой код рабочий - но почему то уходит на печать и отправляет на принтер количество 0.
При этом такой же код без параметров - печатает все листы "на отлично". Кто нибудь делал именно в 1с без макроса такую штуку, что нужно сделать.
---
Если устанавливается константа WdPrintFromTo, то необходимо использовать параметры From и To.
Метод PrintOut

From - необязательный параметр. Номер первой страницы, если параметр Range установлен в wdPrintFromTo.

To - необязательный параметр. Номер последней страницы, когда Range установлен в wdPrintFromTo.

ActiveWindow.PrintOut Range:=wdPrintFromTo, From:="1", To:="3"
---
wdPrintFromTo так как её установить константу? тоесть " 4" - я ставлю правильно, но мне надо задать не диапазон , а From и To ? но я когда ставлю 4 то подразумеваю что хочу печатать WdPrintRangeOfPages , жаль что в той статье только один пример
---
В Вашем вопросе уже есть ответ. Значение константы в этом случае будет = 3, только тип параметра - число, а не строка. Осталось еще указать диапазон.
---
Сделал вот так :
```1c
    ПриложениеВорд.Application.PrintOut(,,3,,Строка(Объект.СтраницыРедактированияОт),Строка(Объект.СтраницыРедактированияДо),,,);
```

страницы редактирования конечно же строки, пробовал и числа - выдавало ошибку. Такой код рабочий - но почему то уходит на печать и отправляет на принтер количество 0.
При этом такой же код без параметров - печатает все листы "на отлично". Кто нибудь делал именно в 1с без макроса такую штуку, что нужно сделать.
---
Удивительно, но при такой передаче параметров в Ворд из 1с77 "пропущенные" значения между запятыми оказывается не равняются незаполеннным (дефолтным). Надо явно указать их. Вот так:

```1c
    ПриложениеВорд.Application.PrintOut(0,0,3,",
    Строка(Объект.СтраницыРедактированияОт),
    Строка(Объект.СтраницыРедактированияДо),0,1);
```

Восьмой параметр (здесь = 1) - количество копий.
А если нужно выводить диапазоны страниц, что универсальнее, то надо заполнять девятый параметр строкой с диапазоном и в третьем указать не 3, а 4:

```1c
    Диапазон = Строка(Объект.СтраницыРедактированияДо)
    + "-"
    + Строка(Объект.СтраницыРедактированияДо);

    ПриложениеВорд.Application.PrintOut
    (0,0,4,",",",0,1, Диапазон);
```
---
Все работает, просто отправляет пусто , я не смотрел что в принтере все таки листы выходят. так что код рабочий. Параметр задается цифрой, а диапазон строкой. У меня работает с 3 , можно пробовать с 4 , но не проверял потому что работает как надо.
---
Удалось решить? сейчас с такой же проблемой столкнулся. При чём если нет принтера, он сохраняет в pdf и
это отрабатывает правильно.
---
почти 3 года прошло. Решил вопрос , там параметры правильно надо было заполнить и диапазон.
---
А не помнишь какой именно параметр? Я вот так передаю, всё проходит без ошибок, но принтер не печатает.

```1c
    Макет.COMСоединение.ActiveDocument.PrintOut(0,0,"4",",",",0,1, "1,3,6-9");
```