|
|
|
| Имеется отчет из нескольких листов. Задача: печатать на 2х сторонах.
Можно ли сделать так? Нажимаешь на кнопку "печать" в форме, печатается первая страница, далее на экране вылетает окошко: "переверните лист и для продолжения печати нажмите ОК". печатаются 2,3 страница, опять вылетает окошко с просьбой перевернуть лист и т.д.
Если можно, то как? Весь форум перевернул, но не нашел подходящих вариантов.
Зараннее спасибо. | |
|
| |
|
|
|
| Это можно настроить в драйвере принтера. | |
|
| |
|
|
|
| а програмно? через диалоговое окно какое-нибудь | |
|
| |
|
|
|
| так ведь всё уже сделано до нас....
Открываешь кнопочкой отчёт в режиме просмотра
выбираешь в меню файл
печать
выходит окно принтера
разложить по страницам
ок | |
|
| |
|
|
|
| Или сувать по одному листу, напечатан лист принтар встал - ждёт нового листа и мы пвыерй переворачиваем и вставлям.... | |
|
| |
|
|
|
| Вот Вы прикалываетесь. объясните это человеку, который с компом на ВЫ общается. я ему уже инструкцию под стекло на работе положил- не понимает (он умнее калькулятора ничего до этого не видел).
Так можно сделать или нет? если бы отчет был на два листа- вопросов бы не было: поставил бы две кнопки "печать 1-й страницы" "печать второй страницы". а здесь может быть от 1 до 3- 4 страниц. | |
|
| |
|
|
|
| Рабочий пример
Private Sub Кнопка34_Click()
On Error GoTo Err_Кнопка34_Click
Dim stDocName As String
Dim MyForm As Form
Dim z As Variant
stDocName = "tblUsers"
Set MyForm = Screen.ActiveForm
DoCmd.SelectObject acTable, stDocName, True
z = 1
Do
DoCmd.PrintOut acPages, z, z
MsgBox "Переверните лист"
z = z + 1
Loop Until False
DoCmd.SelectObject acForm, MyForm.Name, False
Exit_Кнопка34_Click:
Exit Sub
Err_Кнопка34_Click:
MsgBox Err.Description
Resume Exit_Кнопка34_Click
End Sub
|
Осталось только придумать, как остановить печать | |
|
| |
|
|
|
| Предложение: Выдернуть шнур питания | |
|
| |
|
18 Кб. |
|
|
'Вариант с кнопкой своего контекстного меню для отчета
Public Function PrintWithTumbling()
Dim CountPages As Integer
Dim i As Integer
If CurrentObjectType = acReport Then
CountPages = Reports(CurrentObjectName).Pages
DoCmd.PrintOut acPrintAll, 1, 1
For i = 2 To CountPages Step 2
If MsgBox("Печать страницы " & i - 1 & vbCrLf & vbCrLf & _
"Переверните лист по окончании печати страницы." & vbCrLf & vbCrLf & _
"Продолжить?", vbYesNo) = vbYes Then
DoCmd.PrintOut acPrintAll, i, i + 1
Else
Exit Function
End If
Next i
End If
End Function
|
Образчик: | |
|
| |
|
|
|
| Спасибо БОЛЬШОЕ. попробую, если что не получится, буду Вас высвистывать. А то все прикалываются. | |
|
| |
|
|
|
| А почему вызывает затруднение - переворот листа??
Всё равно переворачивать...... .... | |
|
| |
|
|
|
|
А почему вызывает затруднение - переворот листа??
|
это наверно не трудно, нам. а людям более сташего поколения
Еще раз СПАСИБО. | |
|
| |
|