Печать листа или книги
Вы можете распечатать целые или частичные листы и книги по одному или по несколько одновременно. Если данные, которые вы хотите напечатать, есть в таблице Microsoft Excel, можно распечатать только таблицу Excel.
Вы также можете распечатать книгу в файле, а не на принтере. Это полезно, если необходимо распечатать книгу на принтере другого типа, который использовался для печати.
Перед печатью
Прежде чем печатать что-либо в Excel, помните, что существует множество вариантов для оптимальной работы с печатью. Дополнительные сведения см. в разделе «Печать в Excel».
Важно: Определенные виды форматирования, например цветной текст или заливка ячеек, могут хорошо выглядеть на экране, но не оправдать ожидания при печати на черно-белом принтере. Кроме того, можно распечатать лист с сеткой: в результате данные, строки и столбцы будут выделены лучше.
Печать одного или нескольких листов
- Выберите листы, которые нужно распечатать.
- Выберите файл >печать или нажмите клавиши CTRL+P.
- Нажмите кнопку « Печать» или настройте параметры перед нажатием кнопки «Печать «.
Печать одной или нескольких книг
Все файлы книг, которые требуется распечатать, должны находиться в одной папке.
- Выберите в меню Файл пункт Открыть.
- Удерживая нажатой клавишу CTRL, щелкните имя каждой книги для печати, а затем выберите «Печать».
Печать всего листа или его части
- Щелкните лист и выберите диапазон данных, которые необходимо распечатать.
- Выберите «Файл» и нажмите кнопку » Печать».
- В разделе «Параметры» щелкните стрелку рядом с пунктом » Печать активных листов» и выберите соответствующий параметр.
- Нажмите Печать.
Примечание: Если на листе заданы области печати, будут напечатаны только эти области. Если вы не хотите печатать только определенную область печати, установите флажок «Игнорировать область печати». Дополнительные сведения о настройке или очистке области печати.
Печать таблицы Excel

- Выделите ячейку в таблице, чтобы включить таблицу.
- Выберите «Файл«, а затем нажмите кнопку «Печать».
- В разделе «Параметры» щелкните стрелку рядом с пунктом «Печать активных листов» и выберите » Печать выбранной таблицы».
- Нажмите Печать.
Печать книги в файл

- Выберите «Файл«, а затем нажмите клавиши PRINT или CTRL+P.
- В разделе Принтер выберите команду Печать в файл.
- Нажмите кнопку «Печать«.
- В диалоговом окне «Сохранить вывод печати как» введите имя файла и нажмите кнопку «ОК». Файл будет сохранен в папке « Документы»
Важно: При печати сохраненного файла на другом принтере разрывы страниц и интервалы между шрифтами могут измениться.
Печать листа
Для достижения наилучших результатов при печати листа используйте команду «Печать» Excel в Интернете, а не команду «Печать» браузера. Вы можете распечатать весь лист или только нужные ячейки.
Если вы хотите напечатать диапазон ячеек, выделите их. Чтобы распечатать весь лист, ничего не выделите.
- Выберите пункты Файл >Печать >Печать.

- Если вы выбрали диапазон ячеек, но решили распечатать весь лист, переключитесь на всю книгу, прежде чем нажать кнопку «Печать».

Изменение выбранной области печати
В Excel в Интернете можно указать область, которую вы хотите распечатать, или распечатать весь лист. Если вы решите изменить выбранную область печати, вот как можно просмотреть изменения:
- На листе выделите ячейки, которые требуется напечатать, с помощью перетаскивания.
- Выберите пункты Файл >Печать >Печать.
- Чтобы напечатать только выбранную область, в разделе » Параметры печати» выберите «Текущий выделенный фрагмент».
- Если предварительный просмотр печати отображает то, что вы хотите распечатать, нажмите кнопку «Печать».
Чтобы изменить выбор печати, закройте предварительный просмотр, щелкнув значок X, и повторите предыдущие действия.
Чтобы распечатать весь лист, выберите файл > «Печать > печать». Убедитесь , что выбрана вся книга.

Если у вас есть классическое приложение Excel, можно задать дополнительные параметры печати. Нажмите кнопку «Открыть в Excel» и выберите несколько областей печати на листе.

Печать листа со скрытыми строками и столбцами
В Excel в Интернете при печати листа со скрытыми строками или столбцами эти скрытые строки и столбцы не будут напечатаны. Если вы хотите включить скрытые строки и столбцы, их необходимо отобразить перед печатью листа.
Вы можете определить, скрыты ли строки или столбцы с помощью отсутствующих подписей заголовков или двойных линий, как показано на рисунке.

Вот как можно отобразить строки или столбцы:
- Выберите диапазон заголовков, окружающих скрытые строки или столбцы. В этом примере выберите все заголовки строк от 2 до 7, чтобы отобразить строки 3 и 6.

- Щелкните правой кнопкой мыши выделенный фрагмент и выберите » Отобразить строки » (для столбцов выберите » Отобразить столбцы»).
- Выберите Файл >Печать.
- Выберите «Печать » для предварительного просмотра.

- В окне «Параметры печати» убедитесь, что выбран весь лист, и нажмите кнопку «Печать».
Примечание: Метки строк и столбцов не отображаются в режиме предварительного просмотра и распечатки.
Печать книги
Если в Excel в Интернете есть только один лист, вы можете просто распечатать лист. Но если книга содержит несколько листов, необходимо перейти к каждому листу, выбрав вкладку листа, а затем распечатать этот лист.

Не знаете, есть ли в книге скрытые листы? Вот как можно проверить:

- Щелкните правой кнопкой мыши любую вкладку листа.
- Если доступен параметр «Отобразить «, книга содержит один или несколько скрытых листов. Выберите «Отобразить«, чтобыотобразить и отобразить листы.
- При отобразии листа вкладка листа становится доступной. Выберите вкладку листа и распечатайте лист.
Печать таблицы
Иногда нужно напечатать только часть листа, например таблицу. Это можно сделать в Excel в Интернете если таблица содержит менее 10 000 ячеек. Для листов более 10 000 ячеек необходимо использовать классическое приложение Excel.
Чтобы напечатать таблицу:
- Чтобы выбрать все ячейки в таблице, выделите первую ячейку и прокрутите список до последней ячейки. Если таблица содержит много столбцов, вместо прокрутки выделите первую ячейку, нажмите и удерживайте клавишу SHIFT и выберите последнюю ячейку.
- Выберите пункты Файл >Печать >Печать.

- Выберите «Текущий выделенный фрагмент», если он еще не выбран, а затем нажмите кнопку «Печать».

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

Печать номеров страниц на листе
Вы не можете вставлять, просматривать и печатать номера страниц в Excel в Интернете. Но если у вас есть классическое приложение Excel, вы можете добавить номера страниц на лист вверху или внизу (в верхний или нижний колонтитул) и распечатать его.
Нажмите кнопку « Открыть в Excel», чтобы открыть книгу, добавить номера страниц в режиме разметки страницы, а затем распечатать лист из Excel. Ниже рассказывается, как это сделать.
- Выберите «Открыть в Excel»и вставьте номера страниц на листы.
- Печать листа.
См. также
- Предварительный просмотр страниц листа перед печатью.
- Печать линий сетки на листе
- Печать строк с заголовками столбцов в верхней части каждой страницы.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.
Печать листа или книги
Вы можете печатать листы целиком или частично, а также целые книги по одной или сразу несколько. Можно также печатать выделенные фрагменты нескольких листов одновременно. Если данные, которые нужно напечатать, находятся в таблице Excel, можно просто напечатать таблицу Excel.
Печать части листа, всего листа или всей книги
- Выполните одно из указанных ниже действий.
- Чтобы напечатать часть листа, щелкните лист и выделите диапазон данных, которые нужно напечатать.
- Чтобы напечатать весь лист, щелкните лист или ярлычок листа.
- Чтобы напечатать книгу, щелкните любой из ее листов.
- В меню Файл выберите элемент Печать.
- В меню Принтер выберите нужный принтер.
- По умолчанию печатаются все активные листы. Чтобы изменить диапазон данных для печати, выберите Показать подробности.
- В раскрывающемся меню Печать выберите подходящий вариант (Выделение, Активные листы или Вся книга) и нажмите кнопку Печать.
Печать сразу нескольких листов
- Выделите листы, которые нужно напечатать.
Чтобы выделить Необходимые действия Несколько смежных листов Щелкните ярлычок первого листа. Удерживая нажатой клавишу SHIFT, щелкните ярлычок последнего листа, который нужно выделить. Несколько несмежных листов Щелкните ярлычок первого листа. Удерживая нажатой клавишу COMMAND, щелкните ярлычки остальных листов, которые нужно выделить. Все листы книги Удерживая нажатой клавишу CONTROL, щелкните ярлычок листа и в контекстном меню выберите команду Выделить все листы.
Примечание: Когда выделено несколько листов, в строке заголовка вверху листа появляется надпись [Группа]. Чтобы отменить выделение нескольких листов книги, щелкните любой невыделенный лист. Если невыделенных листов нет, удерживая нажатой клавишу CONTROL, щелкните ярлычок выделенного листа и в контекстном меню выберите команду Разгруппировать листы.
Печать выделенных фрагментов с нескольких листов одновременно
- На каждом листе выделите диапазон данных, которые требуется напечатать.
- В меню Файл выберите элемент Печать.
- Выберите Показать подробности.
- В раскрывающемся меню Печать выберите вариант Выделение и нажмите кнопку Печать.
Печать нескольких книг одновременно
Примечание: Все файлы книг, которые нужно напечатать, должны находиться в одной папке.
- В меню Файл выберите команду Открыть.
- Для смежных файлов: удерживая нажатой клавишу SHIFT, выделите имена всех книг, которые нужно напечатать. Для несмежных файлов: удерживая нажатой клавишу COMMAND, выделите имена всех книг, которые нужно напечатать.
- В меню Файл выберите элемент Печать.
Печать таблицы Excel
- Чтобы активировать таблицу, щелкните одну из ее ячеек.
- В меню Файл выберите элемент Печать.
- Выберите Показать подробности.
- В раскрывающемся меню Печать выберите вариант Выделение и нажмите кнопку Печать.
Другие параметры печати
- В диалоговом окне Печать выберите показать подробности, чтобы напечатать документ в формате PDF или выбрать страницы для печати, параметры обработки бумаги, поля и масштаб.
- Вкладка «Разметка страницы» на ленте содержит дополнительные параметры настройки страницы и печати, включая ориентацию страницы, размер бумаги и печать линий сетки и заголовков.
См. также
Печать части листа, всего листа или всей книги
- Выполните одно из указанных ниже действий.
- Чтобы напечатать часть листа, щелкните лист и выделите диапазон данных, которые нужно напечатать.
- Чтобы напечатать весь лист, щелкните лист или ярлычок листа.
- Чтобы напечатать книгу, щелкните любой из ее листов.
- В меню Файл выберите элемент Печать.
- Во всплывающем меню Принтер выберите нужный принтер.
- Рядом с кнопкой Печататьчто выберите параметр, соответствующий тому, что нужно напечатать(Выделение,Активные листы или Вся книга),а затем нажмите кнопку Печать.
Печать сразу нескольких листов
- Выделите листы, которые нужно напечатать.
Чтобы выделить Необходимые действия Несколько смежных листов Щелкните ярлычок первого листа. Удерживая нажатой клавишу SHIFT, щелкните ярлычок последнего листа, который нужно выделить. Несколько несмежных листов Щелкните ярлычок первого листа. Затем, удерживая нажатой кнопку CONTROL, щелкните якладки других листов, которые нужно выбрать. Все листы книги Удерживая нажатой клавишу CONTROL, щелкните ярлычок листа и в контекстном меню выберите команду Выделить все листы.
Примечание: Когда выделено несколько листов, в строке заголовка вверху листа появляется надпись [Группа]. Чтобы отменить выделение нескольких листов книги, щелкните любой невыделенный лист. Если невыделенных листов нет, удерживая нажатой клавишу CONTROL, щелкните ярлычок выделенного листа и в контекстном меню выберите команду Разгруппировать листы.
Печать выделенных фрагментов с нескольких листов одновременно
- На каждом листе выделите диапазон данных, которые требуется напечатать.
- В меню Файл выберите элемент Печать.
- Рядом с кнопкой Печатать нажмитекнопку Выделениеи выберите печать.
Печать нескольких книг одновременно
Примечание: Все файлы книг, которые нужно напечатать, должны находиться в одной папке.
- В меню Файл выберите команду Открыть.
- Удерживая нажатой кнопку CONTROL, щелкните имя каждой книги, которую нужно напечатать.
- В меню Файл выберите элемент Печать.
Печать таблицы Excel
- Чтобы активировать таблицу, щелкните одну из ее ячеек.
- В меню Файл выберите элемент Печать.
- Рядом с кнопкой Печатать нажмитекнопку Выделениеи выберите печать.
Совет: Вкладка «Макет» на ленте содержит дополнительные параметры настройки страницы и печати, в том числе ориентацию страницы, а также их страницы.
Массовая печать файлов
Добрый день. Вопрос возможно уже поднимался. Но надеюсь мою тему не затрут.
Вопрос следующий.
Как осуществить массовую печать файлов.
Т.е. есть папка в ней много файлов, от 100+
Их все нужно отправить на печать. Windows умеет за раз отправлять не более 15 файлов. Но процесс нужно автоматизировать + проблема в том что файлы создаются как .xls а используются офисы 2010-2013. И на некоторых машинах происходит пересчет формул. И он просит сохранить изменения при выходе.
В общем как с помощью командной строки или скриптов организовать автоматическую печать файлов. При этом в них ничего ненужно менять только печатать.
Нашел такой вариант, но он только открывает файлы, на печать не отправляет.
for %%a in (*.xls) do start /wait excel.exe "%%a" /q /n /mFilePrintDefault /mFileExit
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Массовая или выборочная печать файлов Excel
Здравствуйте! Скажите пожалуйста, как сделать такую программку, в которую грузится список.
Массовая загрузка файлов
Нельзя ли как загрузить сразу 2 файла одним кодом? var http: TIdHTTP; Stream: TMemoryStream;.
Массовая рассылка файлов
Подскажите, пожалуйста, как сделать правильно и понятно чтобы было: файл со списком, куда нужно.
Массовая смена расширения файлов
Здравствуйте ув форумчане. Подскажите как можно сменить расширение всех dat файлов в каталоге на.
Заблокирован
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Sub FreeBooksOpen() Dim MyName As String Dim MyPath As String MyPath = "D:\Drink\" MyName = Dir(MyPath & "*.xls") Do While MyName <> "" Excel.Application.Workbooks.Open MyName activeworkbook.printout '([From], [To], [Copies], [Preview], [ActivePrinter], [PrintToFile], [Collate], [PrToFileName])'параметры задайте сами activeworkbook.close false MyName = Dir Loop End Sub
Регистрация: 22.10.2012
Сообщений: 499
Видимо я чего то недопонимаю.
Вроде все сделал как нужно, запускаю макрос, а ничего не происходит.
Пока без печати, но он даже файлы не открывает. Ошибок тоже нету.
1 2 3 4 5 6 7 8 9 10 11 12
Sub FreeBooksOpen() Dim MyName As String Dim MyPath As String Dim sPath As String ' тут вставил MyPath = "C:\Users\boomer\Desktop\1\" MyName = Dir(MyPath & "*.xls") Do While MyName <> "" sPath = MyPath + MyName ' тут вставил Excel.Application.Workbooks.Open sPath ' тут изменил MyName = Dir Loop End Sub
Пример взят из темы что рекомендовали выше. Изменен только путь до папки с файлами.
Ofice 2013
Заблокирован
Видимо нет файлов с расширением .xls в указанной папке?
Добавлено через 55 секунд
Попробуйте пошагово [F8] пройтись.
Регистрация: 22.10.2012
Сообщений: 499
Вот так вроде работает.
Но файл открывает сам себя. Другие не открывает.
1 2 3 4 5 6 7 8 9 10 11 12
Sub FreeBooksOpen() Dim MyName As String Dim MyPath As String Dim sPath As String MyPath = "C:\Users\bommer\Desktop\1\" MyName = Dir(MyPath & "*.xls") Do While MyName <> "" sPath = MyPath + MyName Excel.Application.Workbooks.Open sPath MyName = Dir(MyPath & "*.xls") Loop End Sub
Заблокирован
1 2 3 4 5
Do While MyName <> "" sPath = MyPath + MyName if myname<>thisworkbook.name then Excel.Application.Workbooks.Open sPath MyName = Dir '?(MyPath & "*.xls")-убрать! Loop
Регистрация: 22.10.2012
Сообщений: 499
После открытия файла, код сбрасывается на начало, т.е. не зацикливается.
Мб я нетуда вписал макрос?
Microsoft Excel Objects -> Эта книга
Добавлено через 9 минут
Сделал как ты написал в 6 сообщение. Вроде работает, но не отображается на экране. Щас попробую с печатью сделать.
Добавлено через 5 минут
Вот при таком варианте работает.
но файлы проименованы так name1.xls name2.xls и т.д. и печатает не попорядку
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Sub FreeBooksOpen() Dim MyName As String Dim MyPath As String Dim sPath As String MyPath = "C:\Users\bommer\Desktop\1\" MyName = Dir(MyPath & "*.xls") Do While MyName <> "" sPath = MyPath + MyName If MyName <> ThisWorkbook.Name Then Excel.Application.Workbooks.Open sPath ActiveWorkbook.PrintOut 1, 1, 1, False, "HP LaserJet Professional M1212nf MFP" ActiveWorkbook.Close False End If MyName = Dir Loop End Sub
Добавлено через 6 минут
т.е. печатает так name1.xls name10.xls и т.д. потом name2.xls name20.xls и т.д.
Заблокирован

Сообщение было отмечено Don1172005 как решение
Решение
Сообщение от Don1172005 
файлы проименованы так name1.xls name2.xls и т.д. и печатает не попорядку
А как? Name1, потом Name10 ?
Добавлено через 2 минуты
Называйте файлы по принципу Name001, Name002, Name003, . , Name999,
иначе будете извращаться с сортировкой.
Добавлено через 4 минуты
Ещё вариант —
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Sub FreeBooksOpen() Dim MyName As String Dim MyPath As String Dim sPath As String dim i as long for i=1to 999 if dir("C:\Users\bommer\Desktop\1\Name" & i & ".xls")>""then Excel.Application.Workbooks.Open "C:\Users\bommer\Desktop\1\Name" & i & ".xls" ActiveWorkbook.PrintOut 1, 1, 1, False, "HP LaserJet Professional M1212nf MFP" ActiveWorkbook.Close False else exit for endif next i End Sub
Регистрация: 22.10.2012
Сообщений: 499
Круть, работает спасибо большое Про перебор не подумал что то.
Регистрация: 22.10.2012
Сообщений: 499
Возвращаясь к моим баранам. Все работает прекрасно, но теперь людей не устраивает скорость печати.
Если на принтер xerox 5330 он печатает нормально. Т.к. из очереди печати все идет сразу в память принтера и все ок.
То с xerox 3325 и других менее глобальных принтеров. Печать происходит по 1 странице раз в 30 сек.
И тут у меня родилась идея, слить все книги в один лист и пустить на печать цельным куском. Тогда на печать должно уходить цельным файлом и нормально печататься. Но возникли свои проблемы.
Взять например скрипт. Нашел в интернете. Он работает но не сохраняет форматирование. Т.е. он копирует данные, цвета, но объединения и размеры ячеек он некопирует
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
Sub FiziK() Dim strStartDir As String Dim strSaveDir As String Dim blInsertNames As Boolean strStartDir = ThisWorkbook.Path 'папка, с которой начать обзор файлов strSaveDir = ThisWorkbook.Path & "\result" 'папка, в которую будет предложено сохранить результат blInsertNames = True 'вставлять строку заголовка (книга, лист) перед содержимым листа Dim wbTarget As New Workbook, wbSrc As Workbook, shSrc As Worksheet, shTarget As Worksheet, arFiles, _ i As Integer, stbar As Boolean, clTarget As Range On Error Resume Next 'если указанный путь не существует, обзор начнется с пути по умолчанию ChDir strStartDir On Error GoTo 0 With Application 'меньше писанины arFiles = .GetOpenFilename("Excel Files (*.xls), *.xls", , "Объединить файлы", , True) If Not IsArray(arFiles) Then End 'если не выбрано ни одного файла Set wbTarget = Workbooks.Add(template:=xlWorksheet) Set shTarget = wbTarget.Sheets(1) .ScreenUpdating = False stbar = .DisplayStatusBar .DisplayStatusBar = True For i = 1 To UBound(arFiles) .StatusBar = "Обработка файла " & i & " из " & UBound(arFiles) Set wbSrc = Workbooks.Open(arFiles(i), ReadOnly:=True) For Each shSrc In wbSrc.Worksheets If IsNull(shSrc.UsedRange.Text) Then 'лист не пустой Set clTarget = shTarget.Range("A1").Offset(shTarget.Range("A1").SpecialCells(xlCellTypeLastCell).Row, 0) If blInsertNames Then clTarget = ">>> " & wbSrc.Name & " -- " & shSrc.Name Set clTarget = clTarget.Offset(1, 0) End If shSrc.UsedRange.Copy clTarget.PasteSpecial xlPasteAll 'Это уже вписал я, т.к. без этого просто данные вставлял. End If Next wbSrc.Close False 'закрыть без запроса на сохранение Next .ScreenUpdating = True .DisplayStatusBar = stbar .StatusBar = False On Error Resume Next 'если указанный путь не существует и его не удается создать, 'обзор начнется с последней использованной папки If Dir(strSaveDir, vbDirectory) = Empty Then MkDir strSaveDir ChDir strSaveDir On Error GoTo 0 arFiles = .GetSaveAsFilename("Результат", "Excel Files (*.xls), *.xls", , "Сохранить объединенную книгу") If VarType(arFiles) = vbBoolean Then 'если не выбрано имя GoTo save_err Else On Error GoTo save_err wbTarget.SaveAs arFiles End If End save_err: MsgBox "Книга не сохранена!", vbCritical End With End Sub
Добавлено через 7 минут
ну и желательно что бы каждый лист добавлялся по области печати. Как то так. Пока сижу сам читаю описание всяких функций, но не особо въежаю
Добавлено через 2 часа 50 минут
Ну ни в какую не копирует он форматирование таблицы
Добавлено через 21 минуту
Сделал вот так, 2 вставки данных. В целом вроде все ок, но не копирует высоту строки только ширину столбца
Кликните здесь для просмотра всего текста
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
Sub FiziK() Dim strStartDir As String Dim strSaveDir As String Dim blInsertNames As Boolean strStartDir = ThisWorkbook.Path 'папка, с которой начать обзор файлов strSaveDir = ThisWorkbook.Path & "\result" 'папка, в которую будет предложено сохранить результат blInsertNames = False 'вставлять строку заголовка (книга, лист) перед содержимым листа Dim wbTarget As New Workbook, wbSrc As Workbook, shSrc As Worksheet, shTarget As Worksheet, arFiles, _ i As Integer, stbar As Boolean, clTarget As Range On Error Resume Next 'если указанный путь не существует, обзор начнется с пути по умолчанию ChDir strStartDir On Error GoTo 0 With Application 'меньше писанины arFiles = .GetOpenFilename("Excel Files (*.xls), *.xls", , "Объединить файлы", , True) If Not IsArray(arFiles) Then End 'если не выбрано ни одного файла Set wbTarget = Workbooks.Add(template:=xlWorksheet) Set shTarget = wbTarget.Sheets(1) .ScreenUpdating = False stbar = .DisplayStatusBar .DisplayStatusBar = True For i = 1 To UBound(arFiles) .StatusBar = "Обработка файла " & i & " из " & UBound(arFiles) Set wbSrc = Workbooks.Open(arFiles(i), ReadOnly:=True) For Each shSrc In wbSrc.Worksheets If IsNull(shSrc.UsedRange.Text) Then 'лист не пустой Set clTarget = shTarget.Range("B2").Offset(shTarget.Range("B2").SpecialCells(xlCellTypeLastCell).Row, 0) If blInsertNames Then clTarget = ">>> " & wbSrc.Name & " -- " & shSrc.Name Set clTarget = clTarget.Offset(1, 0) End If shSrc.UsedRange.Copy 'clTarget clTarget.PasteSpecial xlPasteColumnWidths clTarget.PasteSpecial xlPasteAllUsingSourceTheme End If Next wbSrc.Close False 'закрыть без запроса на сохранение Next .ScreenUpdating = True .DisplayStatusBar = stbar .StatusBar = False On Error Resume Next 'если указанный путь не существует и его не удается создать, 'обзор начнется с последней использованной папки If Dir(strSaveDir, vbDirectory) = Empty Then MkDir strSaveDir ChDir strSaveDir On Error GoTo 0 arFiles = .GetSaveAsFilename("Результат", "Excel Files (*.xls), *.xls", , "Сохранить объединенную книгу") If VarType(arFiles) = vbBoolean Then 'если не выбрано имя GoTo save_err Else On Error GoTo save_err wbTarget.SaveAs arFiles End If End save_err: MsgBox "Книга не сохранена!", vbCritical End With End Sub
Как распечатать несколько файлов excel сразу
Добрый день, подскажите, есть около 200 файлов в которых нужно распечатать только первый и второй лист. есть макрос который печатает во всех файлах только первые листы
Добрый день, подскажите, есть около 200 файлов в которых нужно распечатать только первый и второй лист. есть макрос который печатает во всех файлах только первые листы patinkton
К сообщению приложен файл: -__1.xls (28.0 Kb)
Сообщение Добрый день, подскажите, есть около 200 файлов в которых нужно распечатать только первый и второй лист. есть макрос который печатает во всех файлах только первые листы Автор — patinkton
Дата добавления — 24.02.2017 в 12:43
