Как распечатать определенные страницы или рабочий лист на основе значения ячейки в Excel?
Вы когда-нибудь пытались распечатать определенную страницу или рабочий лист на основе значения ячейки в Excel? И как этого добиться? Методы, описанные в этой статье, могут помочь вам решить эту проблему в деталях.
Распечатать определенную страницу на основе значения ячейки с кодом VBA
Распечатать определенный рабочий лист на основе значения ячейки с кодом VBA
Распечатать определенную страницу на основе значения ячейки с кодом VBA
Например, вы хотите, чтобы определенная страница, такая как страница 1 текущего рабочего листа, печаталась автоматически при вводе номера страницы 1 в ячейку A1 текущего рабочего листа. Для этого вы можете сделать следующее.
1. Выберите ячейку, содержащую номер страницы, на основе которой вы хотите напечатать, затем нажмите другой и F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно. Затем нажмите Вставить > модуль.
2. Затем Microsoft Visual Basic для приложений появится всплывающее окно, скопируйте и вставьте следующий код VBA в Код: окно.
Код VBA: печать страницы на основе значения ячейки
Option Explicit
Sub Print_Pages()
Dim xPage As Integer
Dim xYesorNo As Integer
With ActiveCell
If Not IsEmpty(.Value) And IsNumeric(.Value) Then
xPage = .Value
Else: MsgBox "Please specify a cell and enter a page in cell"
Exit Sub
End If
End With
xYesorNo = MsgBox("Ready to print page" & xPage & " ", vbYesNo, "Kutools for Excel")
If xYesorNo = vbYes Then
ActiveSheet.PrintOut from:=xPage, To:=xPage, preview:=True
Else
Exit Sub
End If
End Sub
3. Нажмите F5 ключ для запуска кода. В всплывающем Kutools for Excel диалогового окна, нажмите Да кнопку, чтобы распечатать определенную страницу, или нажмите кнопку Нет , чтобы выйти из диалогового окна, если вы не хотите печатать. Смотрите скриншот:

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

Распечатать определенную страницу на основе значения ячейки с кодом VBA
Предположим, вы хотите распечатать активный рабочий лист, когда значение в ячейке B2 этого листа равно числу 1001. Вы можете добиться этого с помощью следующего кода VBA. Пожалуйста, сделайте следующее.
1. Щелкните правой кнопкой мыши Вкладка листа который вы хотите напечатать на основе значения ячейки, а затем щелкните Просмотреть код из контекстного меню.
2. Затем Microsoft Visual Basic для приложений появится всплывающее окно, скопируйте и вставьте следующий код VBA в окно кода.
Код VBA: распечатать лист на основе значения ячейки
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xCell As Range, xYesorNo As Integer
Set xCell = ActiveSheet.Range("B2")
If Application.Intersect(Target, xCell) Is Nothing Then Exit Sub
If xCell.Value = 1001 Then
xYesorNo = MsgBox("Ready to print the specified worksheet? ", vbYesNo, "Kutools for Excel")
If xYesorNo = vbYes Then
ActiveSheet.PrintOut
Else
Exit Sub
End If
End If
End Sub

Внимание: Вы можете изменить ячейку и значение ячейки в коде по своему усмотрению.
3. Нажмите другой + Q закрыть Microsoft Visual Basic для приложений окно.
При вводе числа 1001 в ячейку B2 появляется Kutools for Excel появится диалоговое окно, нажмите Да кнопку, чтобы начать печать. Или щелкните Нет , чтобы выйти из диалогового окна напрямую без печати. Смотрите скриншот:

Наконечник: Если вы хотите напрямую распечатать непоследовательные страницы, такие как страницы 1, 6 и 9 текущего рабочего листа, или распечатать только все четные или нечетные страницы, вы можете попробовать Печать указанных страниц утилита pf Kutools for Excel как показано ниже. Ты можешь пойти в бесплатно скачать программу без ограничений в течение 30 дней.

Статьи по теме:
Лучшие инструменты для работы в офисе
Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
- Более 300 мощных функций. Поддерживает Office / Excel 2007-2019 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!