Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/41: Рейтинг темы: голосов - 41, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7

Печать любого файла из VBA

01.06.2011, 11:16. Показов 8399. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Стоит задача печати 600 файлов *.html в определенной последовательности. Трудность в том, что бы пользователь один раз выбирал принтер и настройки печати и указанные файлы начинали печататься. Сейчас приходиться делать так: выделяем кучу файлов, потом контекстное меню, печать....и кучу раз нажать кнопку печать!(((( Никто не знает как это все дело автоматизировать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.06.2011, 11:16
Ответы с готовыми решениями:

Как установить VBA-программу для обработки любого Excel-файла ?
Всем привет! Если запущен Excel-файл, в котором создана программа, то любой другой файл обрабатывается этой программой. Но если...

Создайте универсальную функцию PrintAnyArr (печать любого массива, кроме усеченных)
Ребят, всем доброго времени суток, нужна ваша помощь) Имеется следующее задание: 1. Создайте универсальную функцию PrintAnyArr (печать...

Автоматический запуск VBA при запуске любого Excel
Добрый день! Уже прочитал кучу инфы по поводу автоматического запуска, но что то все не хочет взлетать. Задача какая, есть скрипт, к...

12
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
01.06.2011, 18:40
АртёмZ,
а файлы как выбирать (например, мышью или обработать все файлы какой-то папки)?
1
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7
02.06.2011, 10:27  [ТС]
Busine2009
Файлы буду обрабатываться из папки по определенному условию, которое я пропишу!
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
02.06.2011, 10:33
АртёмZ,
а все файлы с расширением .html?
1
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7
02.06.2011, 10:40  [ТС]
Busine2009
Да.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
02.06.2011, 10:41
АртёмZ,
а так в какой программе открываются эти файлы, когда по ним кликают правой кн. мыши?
1
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7
02.06.2011, 10:45  [ТС]
Internet Explorer
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
02.06.2011, 11:14
Печать .html файлов через Microsoft Word:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Sub P1()
Dim Папка As String
Dim Файл As String
'Здесь укажите папку из которой надо распечатывать файлы.
Папка = "C:\Documents and Settings\Пользователь\Рабочий стол\Печать\"
'.htm замените на .html
'vbDirectory - позволяет просмотреть все файлы в заданной папке.
'Если это не использовать, то будут обрабатываться только определённые файлы.
'Например, скрытые файлы не будут просматриваться (щ. правой кн. мыши по файлу - Свойства).
Файл = Dir(PathName:=Папка & "*.htm", Attributes:=vbDirectory)
Do While Файл <> ""
    'Прежде, чем обработать файл его нужно обязательно открыть.
    Documents.Open FileName:=Папка & Файл
    'Обратите внимание, что Background:=False. Это означает, что
    'код будет продолжать выполняться только после отправки файла на печать.
    Application.PrintOut FileName:=Папка & Файл, Range:=wdPrintAllDocument, Item:= _
        wdPrintDocumentWithMarkup, Copies:=1, Pages:="", PageType:= _
        wdPrintAllPages, Collate:=True, Background:=False, PrintToFile:=False, _
        PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
        PrintZoomPaperHeight:=0
    'Закрываем распечатанный документ.
    Documents.Close SaveChanges:=wdDoNotSaveChanges
    'Если в папке есть ещё файлы, то помещаем имя очередного
    'файла в переменную Файл. Если все файлы уже обработаны, то
    'переменная Файл будет пустой.
    Файл = Dir
Loop
'Просто сообщение, что все файлы распечатаны.
MsgBox "Работа кода завершена", vbInformation
End Sub
2
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7
02.06.2011, 17:35  [ТС]
Спасибо БОЛЬШОЕ!!!!

Добавлено через 39 минут
Возникла одна проблема, в Word неверно отображается страница html файла (в Word получаются очень большие картинки) и в результате информация печатается на трех и более страницах, когда она должна печататься на одной...
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
02.06.2011, 18:56
АртёмZ,
т.е. получается надо открывать именно в Internet Explorer.
Т.е. нужно работать через объекты библиотеки Internet Explorer. Я эту библиотеку не знаю, сегодня первый раз столкнулся с ней.

А почему вы решили использовать VBA? Ведь Internet Explorer не идёт с программой VBA?
0
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7
03.06.2011, 09:57  [ТС]
Busine2009,
Да, надо открывать через IE(((( А VBA потому что я его более или менее понимаю)))))

Добавлено через 1 минуту
А как библиотека называется? Не знаете?
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
03.06.2011, 10:16
Библиотека: Microsoft Internet Controls.
Название файла с этой библиотекой: shdocvw.dll
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Sub P1()
'Запускаем программу Internet Explorer.
Dim Браузер As New SHDocVw.InternetExplorer
'Делаем её видимой.
Браузер.Visible = True
'Открывем файл с жёсткого диска компьютера.
Браузер.Navigate URL:="C:\Documents and Settings\Пользователь\Рабочий стол\Печать\Файл1.htm"
'Печатаем.
Браузер.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DODEFAULT
'Закрываем файл.
Браузер.ExecWB OLECMDID_CLOSE, OLECMDEXECOPT_DODEFAULT
End Sub
Проблемы печати:
  1. выполнение кода должно продолжаться только после задания файла на печать. Т.е. 11 строка должна выполниться после задания файла на печать;
  2. не известно, как устанавливать параметры печати (количество копий и т.д.).
Остальную информацию надо смотреть в Интернете.
1
0 / 0 / 0
Регистрация: 01.06.2011
Сообщений: 7
03.06.2011, 10:50  [ТС]
Спасибо, попробую поковыряться в этом))))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.06.2011, 10:50
Помогаю со студенческими работами здесь

Компиляция любого файла .cpp автоматически из bat файла
Нужно сделать универсальный bat файл, чтобы он смог компилировать файлы .cpp с разными названиями в .exe с таким же названием. Нужно...

Печать графики в VBA
Следующая проблема. Есть каталог на диске содержащий отсканированные документы (один документ-один файл с уникальным именем). Есть база...

Печать штрих кода в VBA
Всем привет, подскажите пожалуйста с задачей печати штрих кода в VBA. На форме отображаются штрих коды, точнее их числовой эквивалент,...

Просмотр и печать отчётов VBA
Есть группа с тремя флажками и кнопки Просмотр и Печать. У меня получилось открыть для просмотра и печати только первый отчёт, остальные...

VBA Excel печать листа
На листе ActiveSheet определены сквозные строки &quot;$1:$2&quot; для печати на каждой странице (ActiveSheet.PageSetup.PrintTitleRows =...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru