|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2010 - [решено] Печать чётных и не чётных страниц в excel 2010 |
|
2010 - [решено] Печать чётных и не чётных страниц в excel 2010
|
Ветеран Сообщения: 2196 |
Профиль | Отправить PM | Цитировать Для экономии бумаги нужно распечатать документ excel 2010 на обеих страницах. В word эта функция присутствует, в excel к сожалению этой функции не нашел.
В гугле есть вариант по переводу *.xlsx в *.pdf, распечатывать чётные и не чётные страницы просмотрщиком *.pdf. Возможно есть иной способ? |
|
Отправлено: 10:06, 16-04-2014 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать sov44, ну, а макросом попробовать — чётные/нечётные?
|
Отправлено: 12:12, 16-04-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 12:32, 16-04-2014 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Наподобие (не проверялось):
Option Explicit Sub PrintOdd() Dim i As Integer With ActiveSheet For i = 1 To (.HPageBreaks.Count + 1) * (.VPageBreaks.Count + 1) Step 2 .PrintOut From:=i, To:=i Next End With End Sub Sub PrintEven() Dim i As Integer With ActiveSheet For i = 2 To (.HPageBreaks.Count + 1) * (.VPageBreaks.Count + 1) Step 2 .PrintOut From:=i, To:=i Next End With End Sub |
Последний раз редактировалось Iska, 16-04-2014 в 19:06. Причина: Убрано лишнее (добавил «With ActiveSheet», а внутри него этот самый «ActiveSheet» позабыл убрать ;)). Отправлено: 12:58, 16-04-2014 | #4 |
Ветеран Сообщения: 2196
|
Профиль | Отправить PM | Цитировать Iska, не получается победить макрос.
Приходится в каждом документе создавать макрос, как сделать так, чтобы функция печати не чётных и чётных страниц была во всех документах excel? Из 4 страниц при запуске PrintOdd печатается первая страница, при запуске PrintEven печатается 2 и 4. Третья страница теряется, проверял пару раз. (не исключаю, что это локальная проблем с железом) Приходится вручную переворачивать каждую страницу, что не есть гут (нужно распечатывать документы до 200 страниц). Рассчитывал, что макрос напечатает сначала все нечётные страницы, я переложу пачку бумаги обратно в лоток, макрос напечатает все чётные страницы ... |
|
Последний раз редактировалось sov44, 17-04-2014 в 18:31. Отправлено: 13:29, 17-04-2014 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата sov44:
Цитата sov44:
Цитата sov44:
Пример для типичного лазерного принтера, с прямой печатью нечётных страниц и обратной печатью чётных страниц: 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
В принципе, можно сделать очень многое, если |
|||
Отправлено: 14:21, 19-04-2014 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Из письма в PM:
Цитата sov44:
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 Затем следует сообщение о развороте листов, и порядок печати следующий: В случае документа с нечётным количеством печатных страниц, например, 59 — должно быть следующее. Первый проход: Затем сообщение о развороте листов и снятии верхнего листа из стопки, порядок печати на втором проходе следующий: т.е., по количеству — на одну страницу меньше, нежели в первом проходе. |
|
Отправлено: 11:33, 22-04-2014 | #7 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2010 - Не открывается меню "ФАЙЛ". Печать пустых страниц. | mark23 | Microsoft Office (Word, Excel, Outlook и т.д.) | 5 | 01-11-2012 13:32 | |
Delphi - [Pascal] Вывод чётных чисел | Светлана96 | Тест-форум | 8 | 02-02-2012 14:45 | |
Печать страниц | Folga | Вебмастеру | 3 | 09-12-2009 09:05 | |
C/C++ - Нахождение чётных элементов в столбцах матрицы | ShadowMas | Программирование и базы данных | 9 | 04-04-2009 10:21 | |
Excel-97 и Canon LBP-1120 печать чётных и нечётных страниц | Vas73 | Хочу все знать | 1 | 29-09-2003 06:58 |
|