Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Из письма в PM:
Цитата sov44:
Привет! Образцы файлов excel здесь была ссылка, OS- Windows XP SP3 x86, принтер MF3110, печатаю по сети. Надеюсь на помощь!
Опробовал вышеприведённый код:
Код: Выделить весь код
Option Explicit

Sub PrintOddAndEven()
    Dim i As Integer
    
    With ActiveSheet
        For i = 1 To ExecuteExcel4Macro("Get.Document(50)") Step 2
            Debug.Print i
            
            .PrintOut From:=i, To:=i, Copies:=1, Preview:=True
        Next
    
        If (ExecuteExcel4Macro("Get.Document(50)")) Mod 2 = 1 Then
            MsgBox "Replace paper into printer to print even pages and remove topsheet", vbInformation + vbOKOnly, "Print even pages"
        Else
            MsgBox "Replace paper into printer to print even pages", vbInformation + vbOKOnly, "Print even pages"
        End If
    
        For i = ExecuteExcel4Macro("Get.Document(50)") To 2 Step -2
            Debug.Print i
            
            .PrintOut From:=i, To:=i, Copies:=1, Preview:=True
        Next
    End With
End Sub
На Ваших документах превьюшки отображаются именно в том порядке, в каком я выше описывал (для прямой печати (без превью) достаточно убрать выделенное). Т.е., порядок печати, скажем, на первом из документов таков:
Код: Выделить весь код
1, 3, 5, …, 121, 123, 125
Затем следует сообщение о развороте листов, и порядок печати следующий:
Код: Выделить весь код
126, 124, 122, …, 6, 4, 2
В случае документа с нечётным количеством печатных страниц, например, 59 — должно быть следующее. Первый проход:
Код: Выделить весь код
1, 3, 5, …, 55, 57, 59
Затем сообщение о развороте листов и снятии верхнего листа из стопки, порядок печати на втором проходе следующий:
Код: Выделить весь код
58, 56, 54, …, 6, 4, 2
т.е., по количеству — на одну страницу меньше, нежели в первом проходе.
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:33, 22-04-2014 | #7