Печать по списку excel

Вы когда-нибудь пытались распечатать все параметры в раскрывающемся списке на листе Excel? В этой статье говорится о печати всех параметров из выпадающего списка в отдельной распечатке в Excel.

Распечатать все параметры в раскрывающемся списке с кодом VBA


Распечатать все параметры в раскрывающемся списке с кодом VBA

Следующий код VBA может помочь вам распечатать все параметры в раскрывающемся списке на листе. Пожалуйста, сделайте следующее.

1. нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.

2. в Microsoft Visual Basic для приложений окно, пожалуйста, нажмите Вставить > Модули. Затем скопируйте следующий код VBA в окно модуля. Смотрите скриншот:

Код VBA: распечатать все параметры в указанном раскрывающемся списке в отдельной распечатке

Sub Iterate_Through_data_Validation()
    Dim xRg As Range
    Dim xCell As Range
    Dim xRgVList As Range
    Set xRg = Worksheets("Sheet1").Range("B8")
    Set xRgVList = Evaluate(xRg.Validation.Formula1)
    For Each xCell In xRgVList
        xRg = xCell.Value
        ActiveSheet.PrintOut
    Next
End Sub

Note: In the code, Sheet1 is the worksheet name which contains the drop-down list you want to print. And B8 is the cell contains the drop-down list. Please replace them with your needed.

3. Press the F5 key to run the code.

Then all options in the specified drop-down list in a certain worksheet are printed out separately.


Easily print specified pages in current worksheet in Excel:

With the Print Specific Pages utility of Kutools for Excel, you can easily print specified pages in current worksheet such as print all odd pages, all even pages, print just current page, as well as print custom page range as below screenshot shown.
Download and try it now! (30-day free trail)


Related Articles:

  • How to auto populate other cells when selecting values in Excel drop down list?
  • How to autocomplete when typing in Excel drop down list?
  • How to create a drop down list calendar in Excel?
  • How to create a searchable drop down list in Excel?
  • How to create drop down list with multiple selections or values in Excel?

The Best Office Productivity Tools

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails…
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns… Prevent Duplicate Cells; Compare Ranges
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select…
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more…
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic…
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF
  • More than 300 powerful features. Supports Office / Excel 2007-2021 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial. 60-day money back guarantee.

kte tab 201905

Read More… Free Download… Purchase… 


Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!

officetab bottom

Read More… Free Download… Purchase… 

Comments (15)


No ratings yet. Be the first to rate!

Здравствуйте, товарищи!

Если это не сложно и возможно, то научите как или в каком направлении двигаться.
Как я понимаю, то, что мне надо, решается не особо сложным макросом.
Есть таблица (лист «Реестр доставок»), в котором сведена вся информация, необходимая для составления Транспортной Накладной (далее по тексту ТН). В реестре сведена информация по доставкам по Москве по адресам. Адреса сгруппированы главным для нас образом по округам (ВАО, САО, ЗелАО и тд.).
Есть 2 вида ТН — для монтажа и демонтажа, которые в итоге и надо распечатать.
1-й вид ТН — лист «стр.1_монтаж» + лист «стр.2_монтаж»
2-й вид ТН — лист «стр.1_демонтаж» + лист «стр.2_демонтаж»
В свойствах листов ТН выставлены маркеры двусторонней печати.
Данные в ТН меняются через ВПР. Меняющееся значение в ТН — это номер ТН, объединённая ячейка CM1 (на этот номер завязаны все подстановки в теле ТН).
Уникальные номера в реестре находятся в столбце C для монтажа вида ВАО_1, для демонтажа — в столбце B вида ВАО_1_Д.
Уникальные номера в реестре идут в целом по порядку, но есть пробелы незначительные + единичные случаи буквенных обозначений вида ВАО_П1.

Что хочется автоматизировать:
чтобы после нажатия кнопки распечатались все ТН, начиная с указанной в рамках одного округа. То есть если мне надо распечатать ТН по монтажу по округу ВАО, то я вношу номер ВАО_1 в лист «стр.1_монтаж», далее макрос распечатывает «стр.1_монтаж» + лист «стр.2_монтаж» на 1 листе с 2 сторон, прибавляет единицу к ВАО_1, получает ВАО_2 и распечатывает новое. Если номер подобный отсутствует в реестре, то двигаемся дальше. Признаком окончания работы макроса может служить отсутствие записей на протяжении 10 (количество для примера) итераций (то есть если нет ВАО_300, ВАО_301, ВАО_302 … ВАО_309, то цикл завершается).

Как напечатать док-ты заданной формы с данными из таблицы

marysabel

Дата: Вторник, 14.04.2015, 18:11 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 8


Репутация:

0

±

Замечаний:
0% ±


Excel 2003

Уважаемые форумчане!
Есть задача:
1. Существует таблица с данными (в примере – лист «таблица»)
2. Есть форма документа для печати (в примере – лист «форма для печати»)
Требуется распечатать несколько форм с данными из таблицы, указывая номер п/п. Например, в диалоге ввожу «2-4», должны распечататься три формы с данными из таблицы из строк №2,3,4.

Прошу вас , если кто встречал на этом форуме похожую задачу, поделитесь ссылкой на пост…. Или намекните, как лучше реализовать – шаблоны, макросы?… Даже не знаю, с чего начать… Я разберусь, литературу почитаю… Передо мной, наверно, не первой такая проблемка появилась, так что наверно уже есть решения… Заранее спасибо.
[moder]Начните с Правил этого форума.
Поправьте название темы.
Потом мы перенесем ее в нужный раздел (уже перенесли — кто-то более добр, чем я), а потооооом уже появятся ответы.

К сообщению приложен файл:

4243283.xls
(17.0 Kb)


Вы думаете, что в сказку попали? Нет, это вы в жизнь вляпались….

Сообщение отредактировал marysabelВторник, 14.04.2015, 19:16

 

Ответить

МВТ

Дата: Вторник, 14.04.2015, 20:38 |
Сообщение № 2

Группа: Проверенные

Ранг: Обитатель

Сообщений: 476


Репутация:

137

±

Замечаний:
0% ±


Excel 2007

При помощи ВПР()

Код

=ЕСЛИОШИБКА(ВПР(‘форма для печати’!B3;таблица!B3:C17;2;0);»»)

и т.п.

Сообщение отредактировал МВТВторник, 14.04.2015, 22:24

 

Ответить

marysabel

Дата: Вторник, 14.04.2015, 21:43 |
Сообщение № 3

Группа: Пользователи

Ранг: Прохожий

Сообщений: 8


Репутация:

0

±

Замечаний:
0% ±


Excel 2003

Чем мне поможет эта функция? Не поняла… Пример прицеплен для наглядности, а в реале в таблице до 500 строк. Надо печатать 200-250 документов по форме на втором листе. То есть, надо вывести на печать форму со второго листа, где все данные будут по Иванову Ивану Ивановичу, потом распечатать такой же документ с данными по Петрову, и так далее, пока не распечатаются все документы по людям из заданного диапазона…


Вы думаете, что в сказку попали? Нет, это вы в жизнь вляпались….

Сообщение отредактировал marysabelВторник, 14.04.2015, 21:47

 

Ответить

Pelena

Дата: Вторник, 14.04.2015, 22:22 |
Сообщение № 4

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

Слиянием не хотите воспользоваться?


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

marysabel

Дата: Вторник, 14.04.2015, 22:36 |
Сообщение № 5

Группа: Пользователи

Ранг: Прохожий

Сообщений: 8


Репутация:

0

±

Замечаний:
0% ±


Excel 2003

Pelena, ОГРОМНОЕ человеческое СПАСИБО!!! Это то, что мне нужно для реализации задачи.


Вы думаете, что в сказку попали? Нет, это вы в жизнь вляпались….

 

Ответить

Kuzmich

Дата: Среда, 15.04.2015, 00:47 |
Сообщение № 6

Группа: Проверенные

Ранг: Ветеран

Сообщений: 707


Репутация:

154

±

Замечаний:
0% ±


Excel 2003

Можно печатать и в рамках Excel.
На листе Таблица в ячейках J1 и L1 вводите номера документов
для печати, например 1 и 3 (печатать с 1 по 3)
Можно вставить кнопку на лист и запустить макрос (в модуле листа Таблица),
[vba]

Код

Private Sub CommandButton1_Click()
Dim i As Long
Dim Nomer As Integer
Dim FoundNomer
    Nomer = Range(«J1»)
     Do
     Set FoundNomer = Columns(1).Find(Nomer, , xlValues, xlWhole)
     With Worksheets(«форма для печати»)
         .Range(«B3») = Cells(FoundNomer.Row, 2)  ‘номер документа
         .Range(«B5») = Cells(FoundNomer.Row, 3)  ‘ФИО
         .Range(«B7») = Cells(FoundNomer.Row, 4)  ‘гражданство
         .Range(«B9») = Cells(FoundNomer.Row, 5)  ‘дата
         .Range(«B11») = Cells(FoundNomer.Row, 6) ‘паспорт
         .PrintPreview
         Nomer = Nomer + 1
     End With
     Loop While Nomer <> Range(«L1») + 1
End Sub

[/vba]
Для печати замените строку .PrintPreview на .PrintOut

 

Ответить

Skip to content

Как распечатать таблицу Эксель

На чтение 4 мин. Просмотров 1.3k.

Что делает макрос: Сводные таблицы обеспечивают отличный механизм для анализа больших наборов данных в файлы для печати. Вы можете создать отчет сводной таблицы, в комплекте скопления и анализа, и затем поместить поле (например, регион) в фильтр отчета. С фильтром отчета, вы можете выбрать каждый элемент данных один раз, а затем распечатать отчет сводной таблицы.
Макрос в этом разделе показывает, как автоматически перебрать все значения в фильтр отчета и распечатать сводную таблицу для каждого значения фильтра.

Содержание

  1. Как макрос работает
  2. Код макроса
  3. Как этот код работает
  4. Как использовать

Как макрос работает

В объектной модели Excel, в раскрывающемся списке Фильтр отчета известен как PageField. Для печати сводной таблицы каждого элемента данных в фильтре отчета, мы должны перебрать коллекцию PivotItems объекта PageField. Когда мы делаем цикл, то динамически меняем выбор в фильтре отчета, а затем используем метод ActiveSheet.PrintOut для печати целевого диапазона.

Код макроса

Sub RaschechatatSvodnuyuTablicuDlyaKajdogoZnayaeniyaFiltra()
'Шаг 1: Объявляем переменные
Dim pt As PivotTable
Dim pf As PivotField
Dim pi As PivotItem
'Шаг 2: Курсор в активной ячейке в сводной таблице
On Error Resume Next
Set pt = ActiveSheet.PivotTables(ActiveCell.PivotTable.Name)
'Шаг 3: Выход, если активная ячейка не в сводной таблице
If pt Is Nothing Then
MsgBox "Вы должны поместить курсор в сводную таблицу."
Exit Sub
End If
'Шаг 4: Выход, если более одного поля страницы
If pt.PageFields.Count > 1 Then
MsgBox "Слишком много полей фильтра отчетов. Предел 1."
Exit Sub
End If
'Шаг 5: Начало цикла через поле страницы и его опорные пункты
For Each pf In pt.PageFields
For Each pi In pf.PivotItems
'Шаг 6: Измените выбор в фильтре отчета
pt.PivotFields(pf.Name).CurrentPage = pi.Name
'Шаг 7: Установить область печати и печатать
ActiveSheet.PageSetup.PrintArea = pt.TableRange2.Address
ActiveSheet.PrintOut Copies:=1
'Шаг 8: Получить элемент поля на следующей странице
Next pi
Next pf
End Sub

Как этот код работает

  1. Шаг 1 объявляет три переменные: Pt в качестве контейнера для памяти нашей сводной таблицы, Pf как контейнер памяти для наших полей страниц, а Pi провести каждый элемент сводной, как мы делаем цикл через объект PageField.
    Активная ячейка должна находиться внутри сводной таблицы для запуска этого макроса.
    Предполагаем что, когда курсор находится внутри определенной сводной таблицы, мы хотим выполнить действие макроса.
  2. Шаг 2 устанавливает переменную St к сводной таблице, на которой найдена активная ячейка. Мы делаем это, используя свойство ActiveCell.PivotTable.Name, чтобы получить имя целевого диапазона.
    Если активная ячейка не находится внутри сводной таблицы, макрос выдает ошибку.
    Именно поэтому мы используем On Error Resume Next Statement. Это говорит Excel продолжить макрос, если есть ошибка.
  3. Шаг 3 проверяет, заполнена ли переменная PT сводной таблицы объекта. Если переменная PT установлена, а активная ячейка была не на сводной таблице, таким образом, сводной таблице не может быть присвоена переменная. Если это так, то пользователь получает уведомление через окно сообщения, а затем мы выходим из процедуры.
  4. Шаг 4 определяет, есть ли более одного поля фильтра отчета. (Если количество PageFields больше единицы, существует более одного фильтра отчета.) Мы делаем эту проверку по простой причине, чтобы избежать печати отчетов для фильтров, которые просто оказались там.
    Без этой проверки, вы можете печатать сотни страниц. Макрос останавливается, если количество полей больше 1.
    Вы можете удалить это ограничение.
  5. Шаг 5 запускает два цикла. Внешний говорит Excel перебрать все фильтры отчетов. Внутренний цикл проходит по всем элементам фильтра, который в настоящее время имеет фокус.
  6. Для каждого элемента, макрос захватывает имя элемента и использует его для изменения выбора отчета фильтра.
  7. Шаг 7 печатает активный лист, а затем переходит к следующему пункту цикла.
  8. После того, как мы прошли через все пункты цикла в фильтре отчета, макрос переходит к следующей странице. После того, как все страницы были оценены, макрос заканчивается.

Как использовать

Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:

  1. Активируйте редактор Visual Basic, нажав ALT + F11.
  2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
  3. Выберите Insert➜Module.
  4. Введите или вставьте код.

Существует множество вариантов печати книги Excel. Вы можете выбрать какую часть книги печатать, и как расположить информацию на странице.

В этом уроке вы узнаете, как напечатать листы, книги и выбранные ячейки. Также вы узнаете, как подготовить книги для печати, например, изменить ориентацию страницы, масштаб, поля, печать заголовков и разрывы страниц.

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

Чтобы увидеть панель Печать:

  1. Кликните по вкладке Файл, чтобы открыть всплывающее меню.
  2. Выберите Печать. Слева будут настройки параметров печати, а справа – панель Предварительного просмотра документа.

Самоучитель Excel - печать документа
1) Кнопка Печать

Когда вы будете готовы печатать книгу, нажмите кнопку Печать.

2) Принтер

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


3) Диапазон печати(настройка)

Здесь вы можете выбрать, печатать активные листы, всю книгу или выделенный фрагмент.


4) Разбирать/Не разбирать по копиям

Если вы печатаете несколько копий, то можете выбрать, разбирать листы по копиям или нет.


5) Ориентация

Здесь можно выбрать Книжную или Альбомную ориентацию страницы.


6) Размер бумаги

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


7) Поля

Здесь вы можете настроить поля. Это полезно, если часть листа обрезается принтером.


8) Масштаб

Выберите, как разместить ваши листы на печатной странице. Вы можете напечатать лист фактического размера, вписать его в одну страницу или поместить все строки или столбцы на одну страницу.


9) Страница

Кликните по стрелке, чтобы увидеть другую страницу на панели предварительного просмотра.

10) Предварительный просмотр

Позволяет увидеть, как будет выглядеть напечатанная книга.

11) Показать поля/По размеру страницы

Кнопка По размеру страницы находится справа. Нажмите на нее для увеличения и уменьшения изображения на панели предварительного просмотра.

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

Чтобы напечатать активные листы:

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

  1. Выберите лист, который нужно напечатать. Чтобы напечатать несколько листов, сгруппируйте их. Кликните по ярлычку первого, зажмите клавишу Ctrl, затем кликните по ярлычкам остальных нужных листов.
    Выбор листов для печати Excel
  2. Кликните по вкладке Файл.
  3. Выберите Печать чтобы открыть панель печати.
  4. Выберите Напечатать активные листы в выпадающем списке Диапазон печати.
    Напечатать активные листы в Excel
  5. Нажмите кнопку Печать.

Чтобы напечатать всю книгу:

  1. Кликните по вкладке Файл.
  2. Выберите Печать для доступа к панели печати.
  3. Выберите Напечатать всю книгу в выпадающем списке Диапазон печати.
    Напечатать всю книгу Excel
  4. Нажмите кнопку Печать.

Чтобы напечатать выделенный фрагмент, или задать область печати:

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

  1. Выделите нужные для печати ячейки.
    Выделение ячеек Excel для печати
  2. Кликните по вкладке Файл.
  3. Выберите Печать, чтобы открыть панель печати.
  4. Выберите Напечатать выделенный фрагмент в выпадающем списке Диапазон печати.
    Напечатать выделенный фрагмент Excel
  5. На панели предварительного просмотра вы можете увидеть, как будут выглядеть ваши ячейки при печати.
    предварительный просмотр Excel
  6. Нажмите кнопку Печать.

Вы также можете задать область печати заранее на вкладке Разметка страницы. Это приведет к появлению пунктирной линии вокруг выделенного вами фрагмента. Таким образом, вы сможете видеть, какие ячейки попадут на печать, уже во время работы. Чтобы это сделать, просто выделите ячейки, которые хотите напечатать, и выберите команду Область печати на вкладке Разметка страницы.

Чтобы изменить ориентацию страницы:

Измените ориентацию на Книжная, чтобы страница располагалась вертикально, или на Альбомная, чтобы страница располагалась горизонтально. Книжная ориентация полезна, когда нужно поместить на страницу больше строк, а Альбомная – когда больше столбцов.

  1. Кликните по вкладке Файл.
  2. Выберите Печать чтобы открыть панель печати.
  3. Выберите Книжная ориентация или Альбомная ориентация из выпадающего меню ориентация страницы.
    Ориентация страницы Excel
  4. Ориентация вашей страницы изменится.
    Ориентация страницы

Чтобы вписать лист на одну страницу:

  1. Кликните по вкладке Файл.
  2. Выберите Печать чтобы открыть панель печати.
  3. Выберите Вписать лист на одну страницу из выпадающего меню масштаб.
    Вписать  лист на одну страницу Excel
  4. Ваш лист будет уменьшен до такого размера, который поместится на одну страницу. Помните, что при слишком маленьком масштабе, лист может быть сложно читать.

Чтобы настроить поля на панели предварительного просмотра:

Вам может понадобиться настроить поля на листе, чтобы информация лучше помещалась на странице. Вы можете это сделать на панели предварительного просмотра.

  1. Кликните по вкладке Файл.
  2. Выберите Печать чтобы открыть панель печати.
  3. Нажмите на кнопку Показать поля. Появятся поля.
  4. Наведите курсор мыши на индикатор поля, он превратится в двойную стрелку.
  5. Зажмите левую кнопку мыши и тащите поле в нужное положение.
  6. Отпустите кнопку мыши. Поле изменено.

Изменение полей на панели предварительного просмотра

Чтобы использовать заголовки страниц:

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

  1. Кликните по вкладке Разметка страницы.
  2. Выберите команду Печатать заголовки.
    Печатать заголовки Excel
  3. Появится диалоговое окно Параметры страницы. Кликните по иконке справа от поля Сквозные строки.
  4. Курсор мыши примет вид стрелки. Кликните по строкам, которые нужно повторять на каждой странице. В поле сквозные строки, появится запись вашего выбора.
  5. Кликните по иконке справа в поле Сквозные строки.
  6. Повторите эти действия для поля Сквозные столбцы, если это необходимо.
  7. Нажмите OK. Результат вы можете посмотреть на панели Предварительного просмотра.

Чтобы вставить разрыв страницы:

  1. Кликните по вкладке Разметка страницы.
  2. Определите место разрыва кликом по строке ниже, ячейке ниже или столбцу справа от места, где должен быть разрыв. Например, в моем случае можно выбрать столбец D, тогда разрыв появится после столбца C.
    Разрыв страницы Excel
  3. Выберите команду Вставить разрыв страницы из выпадающего меню Разрывы.
     "Вставить разрыв страницы"
  4. Разрыв вставлен. На панели Предварительного просмотра можно удостовериться, что разрывы появились в нужном месте.

Понравилась статья? Поделить с друзьями:
  • Печать по размеру страницы word
  • Печать нескольких документов excel
  • Печать по размерам листа excel
  • Печать названия файла в excel
  • Печать по одной странице в word 2007