- Печать на принтере — Excel VBA
- Видеокурсы по Excel
- Ъпо воде
- Немного теории
- Практические примеры VBA, где
- Практические примеры VBA — где
- Ограниченная область печати
- Предварительный просмотр перед печатью
- Набор параметров печати с помощью VBA
- Всего
- Если
- Павел Ласбк — автор сайта
- Комментарии
- Моника З.
- Павел Ласбак
- Люсия Будзбкова
- Павел Ласбак
- Джордж
- Филипп
- Мартин С
- Люк В.
- Стефан
- Виктор СИМАНН
- Радек
Печать на принтере — Excel VBA
Видеокурсы по Excel
В сотрудничестве с SEDUO я создал несколько видеокурсов:
- Как работать с Excel – научитесь эффективно использовать Excel – самый популярный ( рейтинг 97 %, более 13 000 студентов, + 750 положительных отзывов ) – Получить курс
- MaxiCourse Excel – получите лучшую работу, больше денег, станьте незаменимым ( более 6 часов просмотра, 160 уроков ) – Получить курс
- G-таблицы. — если не нравится Excel, воспользуйтесь курсом на Google-таблицах
Как использовать VBA Excel для печати?
Ъпо воде
Как помочь VBA распечатать счет-фактуру (или другую информацию на листе). Выявлена следующая статья.
Немного теории
Немного теории, или что можно настроить в PrintOut.
Синтаксис метода:
PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName)
Переменная | Описание |
---|---|
От | Номер страницы начинается с печати |
До | Выпуск последней страницы для печати |
Копий | Количество количество копий |
Предварительный просмотр | Предварительный просмотр (образец) перед печатью TRUE , FALSE |
ActivePrinter | Имя принтера, который будет печатать |
PrintToFile | Печать в файл — если TRUE |
Разобрать | True для сортировки |
PrToFileName | Если мы печатаем в файл, задаем имя файла |
Практические примеры VBA, где
Непростой код. Мы просто все печатаем.
Практические примеры VBA — где
Вы просто сложите его. Мы будем печатать со страницы 3 по страницу 10 на принтере HP DeskJet (это зависит от того, как вы настроили свои принтеры).в вашем ПК), и вам потребуется доработка, так как у нас три экземпляра (т.е. распечатаны со стр. 3,4,5..10 и далее опять 3-10 и в строчку так же. Без доработки, 3х стр.3, 3х будет напечатана страница 4 и т. д.
ActiveSheet.PrintOut From:=3, To:=10, Copy:=3, ActivePrinter:=»HP DeskJet 930 на LPT1:», Collate:= True
Примечание. Страницы должны содержать печатный текст.
Ограниченная область печати
Определить, что будет напечатано. Однако не все нужно печатать. Кроме того, вы экономите на расходах на печать. Более подробно я изменю это в статье и параметрах для печати.
Предварительный просмотр перед печатью
Для предварительного просмотра перед печатью используйте код VBA
Набор параметров печати с помощью VBA
О настройках параметров печати я расскажу в одной из следующих статей.
Есть много возможностей:
- Черно-белое
- Свойство BottomMargin
- Центральный нижний колонтитул
- CenterFooterPicture
- Номер первой страницы
- FitToPagesWide
- Подогнать по высоте страницы
- Отступ нижнего колонтитула
- Заголовок
- Изображение левого заголовка
- Изображение левого нижнего колонтитула
- Левое поле
- OddAndEvenPagesHeaderFooter
- Ориентация
- Заказать
- Область печати
- Качество печати
- PrintTitleColumns
- PrintTitleRows
- RightFooterPicture
- Правое поле
- Верхнее поле
- Масштаб
Всего
Там, где нет объявлений переменных, так как это служит примером.
Статья обновлена: 19.09.2020 11:07
Если
Помог ли этот веб-сайт сэкономить вам время и деньги? Помог ли он решить проблему? Готовы ли вы предоставить символическое вознаграждение за дальнейшее развитие? Выберите форму вознаграждения, которая вам подходит.
Павел Ласбк — автор сайта
Microsoft Office (Word, Excel, Google Sheets , PowerPoint) использую с 2000 г. (с 2004 г. в этом домене) — ВВ 2017 году я получил престижную награду MVP от Microsoft (пока я единственный от ИР в категории Excel). Я также делюсь своими знаниями и опытом онлайн в видеороликах для SEDUO . В компаниях преподаю и консультирую , работаю в МУНИ. Я создаю этот сайт более 15 лет. Существует более 1000 бесплатных инструкций, советов и рекомендаций, включая более 250 различных шаблонов и рабочих книг.
Комментарии
Моника З.
Добавлено: 28.06.13 15:51
Здравствуйте, хотелось бы совета, можно ли как-то ограничить предпросмотр печати (в vba)? т.е. чтобы при предпросмотре отображалось либо только от ячейки к ячейке, а может только страница 2. Если я напрямую ввожу Worksheets(«имя_листа»).PrintPreview=»$A$18:$P$85″, то всё равно всё отображается. Спасибо за совет. Моника З.
Павел Ласбак
Добавлено: 28.06.13 20:27
Монике З.: Область печати через PrintArea ActiveSheet.PageSetup.PrintArea = «T!$B$9:$G$19»
Люсия Будзбкова
Добавлено: 12.03.13 10:30
Добрый день, можно ли ввести сводную таблицу как область печати? Спасибо Люсия
Павел Ласбак
Добавлено: 12.03.13 18:39
Это Люсия Будзбекова:
1) Выберите сводную таблицу (нажмите на ячейку и Ctrl+A) или через вкладку «Инструменты сводной таблицы» — вкладка «Параметры» — раздел — «Действия» — «Выбрать» — «Вся сводная таблица». Или что нужно напечатать.
2) Во вкладке Разметка страницы — раздел Внешний вид страницы — Область печати.
Джордж
Добавлено: 20.12.14 15:30
Здравствуйте, отличный сайт, полный полезных советов, спасибо за него. У меня вопрос по печати, у меня макрокнопка для печати определенной части книги, сохранить и закрыть. Недостаток у него только один, печать двухсторонняя и выскакивает окно «подсказка для печати», или как печатать с двух сторон. Можно ли написать какой-нибудь «ложный» код или что-то еще, чтобы отключить эти надоедливые сообщения? спасибо
Филипп
Добавлено: 14.02.15 17:52
Здравствуйте, я вас спрашиваю, даже если я изменю имя принтеров, как я хочу, я все равно буду печатать по умолчанию. Есть ли способ установить либо всегда сбрасывать настройки по умолчанию перед печатью, либо выбрать, какой принтер будет печатать? я думаю
Мартин С
Добавлено: 03.06.15 07:01
Здравствуйте, хотелось бы совета. Но, вероятно, это будет немного сложнее. У меня есть адреса людей, определенных людей из разных компаний в Excel. По одному в каждом ряду. Мне нужно было бы запрограммировать макрос для печати ярлыка с именем и адресом. Для того, чтобы макрос собирал определенные данные из ячеек, вставляйте их определенным шрифтом и центрируйте на листе А4 (в целом), оборачивайте при необходимости или сохраняйте какую-то информацию, например имя, в целом, рядом с каждой другое и не заворачивать (даже ценой уменьшения шрифта). Можно ли его как-то добиться?Можно ли это сделать иначе как через открытие программы Ворд?Ведь у него не было бы такой скорости реакции. Заранее спасибо за ответ.
Люк В.
Добавлено: 11.04.15 12:02
В качестве благодарности за советы и подсказки и готовность помочь в дальнейшем в вопросе ВБ, я отправлю скромную сумму на вышеуказанный счет. Спасибо 🙂
Стефан
Добавлено: 15.12.15 17:59
Здравствуйте, у меня проблема с печатью самих форм и следующая — не знаю как изменить печать самих форм в VB на полную (первично заданную) или на построчную. Я могу увеличить его до меньшего процента и распечатать, но я не хочу. спасибо за ответ
Добавлено: 16.08.16 13:27
Здравствуйте, у меня установлена область печати («$C$2:$DR$123»), и я хотел бы жестко установить страницу_1 («$C$2:$DR$62») и страницу_2 («$C$63:$ 123 DR $). Спасибо за любой совет.
Виктор СИМАНН
Добавлено: 09.02.16 10:40
Добрый день! Когда-то я создал макрос для печати документа в Excel (1-я страница на 1-м листе и 2-я страница на 2-м листе), для принтера (HP), который не мог печатать с обеих сторон(даже при ручном заказе). Теперь у меня есть принтер с двусторонней печатью (HP), но я не знаю, как написать команду в макросе для печати данного документа с обеих сторон. Вы можете дать мне совет? Спасибо!
Радек
Добавлено: 27.11.16 21:21
Здравствуйте, я тоже присоединяюсь к вам с запросом кода VBA для двусторонней печати. Мне нужно добавить код к кнопке, которая будет печатать два листа Excel с обеих сторон на одном листе бумаги. Я понимаю.