Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/47: Рейтинг темы: голосов - 47, средняя оценка - 4.53
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
1
Excel

Двухсторонняя печать в EXEL. Код VBA

22.05.2021, 11:43. Показов 8850. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Хочу привязать к кнопке печать макрос для печати два листа но одной бумаге с функцией Переворачивать страницы относительно короткого края

Файл во вложении
Вложения
Тип файла: zip Два листа.zip (8.9 Кб, 14 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2021, 11:43
Ответы с готовыми решениями:

Что делает код VBA Exel?
Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single,...

двухсторонняя печать
Подскажите пожалуйста! У меня принтер Canon LBP 800 и по -моему у него есть двухсторонняя печать,...

Двухсторонняя печать в FastReport
Как в фастрепорте можно напечатать уведомление(печатается с двух сторон). У меня получалось...

Двухсторонняя печать Word из VB
Суть. Нужно из VB распечатать документ Word на двух сторонах листа. Принтер не поддерживает...

19
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
22.05.2021, 12:33 2
И в чем вопрос? ПКМ по кнопке - Назначить макрос - пишем/выбираем имя макроса. А в нем уже необходимый код.
0
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
23.05.2021, 13:58  [ТС] 3
Zeag, Мне нужен необходимый код
0
ᴁ®
Эксперт MS Access
3813 / 2148 / 453
Регистрация: 13.12.2016
Сообщений: 7,360
Записей в блоге: 5
23.05.2021, 14:27 4
Цитата Сообщение от Karina4 Посмотреть сообщение
Мне нужен необходимый код
Еще пару одноименных тем и ваша настойчивость будет возграждена баном!
Лично я - за.
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
23.05.2021, 14:37 5
У вас пустой лист. Откуда знать, какой диапазон и какие листы печатаются?

"Нет ТЗ - результат ХЗ" (с)
0
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
23.05.2021, 20:57  [ТС] 6
Zeag, Зачем вы всё усложняете ? Вы даже не пытаетесь мне помочь, вы только пытаетесь унизить.

Там же написано Лицевая сторона, обратная сторона. Что непонятного ? Область печати уже установлен

Области печати:

Лицевая сторона A1 J48

Обратная сторона K1 T48

Вот так понятно ?

Что еще вы придумаете чтобы меня унизить ?
0
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
23.05.2021, 21:05  [ТС] 7
Напишите пожалуйста код для печати двух страниц на одном листе с функцией Переворачивать страницы относительно короткого края

Области печати:

Лицевая сторона A1 J48

Обратная сторона K1 T48

Файл во вложении
Вложения
Тип файла: zip Два листа.zip (8.9 Кб, 19 просмотров)
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
23.05.2021, 21:16 8
Лучший ответ Сообщение было отмечено Karina4 как решение

Решение

У меня ваш файл показывается как на скрине, так что печатает по 2 листа. Но вроде то, что хотели.
Если в файл (сперва, чтобы не тратить бумагу), то убрать апострофы.
Visual Basic
1
2
3
4
5
Sub TwoPage()
   ActiveSheet.Range("A1:J48").PrintOut 'PrintToFile:=True, PrToFileName:=ThisWorkbook.Path & "\out1.xps"
   MsgBox "Переверните страницу"
   ActiveSheet.Range("K1:T48").PrintOut 'PrintToFile:=True, PrToFileName:=ThisWorkbook.Path & "\out2.xps"
End Sub
Миниатюры
Двухсторонняя печать в EXEL. Код VBA  
1
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
24.05.2021, 23:15  [ТС] 9
Zeag, У вас почему то страничный режим, не знаю почему, я сохраняла в обычном режиме

Спасибо за код. Проверю на работе
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
24.05.2021, 23:38 10
Я поставил страничный режим, чтобы посмотреть границы страниц.
0
11513 / 3799 / 681
Регистрация: 13.02.2009
Сообщений: 11,217
25.05.2021, 07:58 11
с функцией Переворачивать страницы относительно короткого края
У вас есть такая функция в принтере? сам переворачивает?
Тогда попробуйте задать вывод на печать с этой функцией с записью макроса
Возможно запишет параметр
У меня такого нет - проверить не могу
1
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
25.05.2021, 10:46  [ТС] 12
Zeag, Zeag, Ваш код не печатает вьдвухстороннем режиме, он печатает листы по отдельно, у меня принтер с функцией двухсторонней печати
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
25.05.2021, 10:52 13
Мы на удаленке. У меня дома вообще никакого принтера нет. На работе без двухсторонки. Тыкать пальцем в небо в программировании проблематично. И сколь я вижу в гугле при поиске "excel двусторнняя печать", это вообще проблема не экселя, а настроек принтера - в нем отмечается соответствующий пункт. Для примера выведите в ОДИН (!) файл и потом из проводника его отправьте на ваш принтер и посмотрите результат.
1
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
25.05.2021, 12:00  [ТС] 14
Alex77755, Это хорошая идея, получился вот такой код
PureBasic
1
2
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Только как бы мне сделать чтобы на печать вывелить область печати "A1:I52" "J1:R52"
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
25.05.2021, 12:03 15
Посмотрите на разницу кодов:
Visual Basic
1
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
Visual Basic
1
ActiveSheet.Range("A1:J48").PrintOut
Ничего не замечаете в части до PrintOut?
1
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
25.05.2021, 12:28  [ТС] 16
Zeag, на рабочем принтере область печати почему то изменилась. у меня дома по другому, я изменила область печати на A1:R52
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
25.05.2021, 12:30 17
Лучший ответ Сообщение было отмечено Karina4 как решение

Решение

Я к тому, что попробовал бы указать область печати и затем Copies:=1, Collate:=True, IgnorePrintAreas:=False
Но без принтера сложно сказать, какой будет результат.
Область печати от настроек принтера зависит, похоже. Я делал одну задачу, где надо было вставлять границы листов - и тоже на разных ПК отличалось.
1
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
25.05.2021, 13:40  [ТС] 18
Zeag, У меня уже есть рабочий код
Bash
1
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _ IgnorePrintAreas:=False
этот код печатает с двух сторон заданую обрасть печати

Мне его нужно переделать чтобы код сам задавал область печати, область печати A1:R52
0
834 / 484 / 186
Регистрация: 09.03.2009
Сообщений: 1,664
25.05.2021, 13:49 19
Проверьте так. Но еще раз - вслепую работать трудно.
Visual Basic
1
ActiveSheet.Range("A1:R52").PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
1
2 / 4 / 0
Регистрация: 09.11.2020
Сообщений: 347
03.06.2021, 22:09  [ТС] 20
Разобралась. Спасибо. Оказывается всё было очень просто, просто нужно было один раз распечатать лист с функцией двухсторонней печати и сохранить файл, потом в коде печати указать диапазон печати двух листов, и всё, больше ничего не нужно

при нажатии на кнопку печать эти два листа выходят в функцией двухсторонней печати так как мы сохраняли файл в таком виде

Всем спасибо за отзывчивость
0
03.06.2021, 22:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.06.2021, 22:09
Помогаю со студенческими работами здесь

Нумерация страниц и двухсторонняя печать
Задача: Распечатать i одинаковых страниц (создав одну), но пронумерованных от 1 до i. Макрос: ...

Canon mf3010 двухсторонняя печать
Доброго времени суток. Установлен принтер Canon mf3010 последние драйвера, возможно ли включить...

Двухсторонняя печать excel файла
Всем привет.Парни я снова со своей двухсторонней печатью файла. Я печатаю excel файл, но у меня не...

Двухсторонняя печать документа ворд из делфи
Помогите пожалуйста: Printout(from, To, Copies, Preview, ActivePrinter, PrintToFile,...

Программно узнать, есть ли на принтере двухсторонняя печать
здравствуйте, сабж+если есть, то напечатать с обратной стороны листа куэр-код напечатанного текста,...

VBS. Изменение свойства принтера - двухсторонняя печать
Через WMI могу получить значение свойства Duplex в классе Win32_PrinterConfiguration. А как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru