Как распечатать определённые страницы или лист в Excel на основе значения в ячейке?
Вам когда-нибудь нужно было печатать определённые страницы или листы в Excel в зависимости от значения ячейки? Независимо от того, требуется ли распечатать конкретный номер страницы или целый лист при выполнении заданного условия, в этом руководстве вы найдёте пошаговые методы для решения этой задачи.
Печать определённой страницы на основе значения ячейки с помощью кода VBA
Печать определённого листа на основе значения ячейки с помощью кода VBA
Печать определённой страницы на основе значения ячейки с помощью кода VBA
Например, вы хотите, чтобы при вводе числа 1 в ячейку A1 на листе «Текущий лист» автоматически печаталась определённая страница — скажем, первая страница этого же листа. Выполните следующие действия, чтобы реализовать это.
1. Выделите ячейку с номером страницы, которую нужно напечатать, затем нажмите одновременно клавиши Alt и 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 для 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. Нажмите сочетание клавиш Alt+Q, чтобы закрыть окно Microsoft Visual Basic для приложений.
После ввода числа 1001 в ячейку B2 появится диалоговое окно Kutools для Excel. Нажмите кнопку Да, чтобы начать печать, или кнопку Нет, чтобы закрыть диалоговое окно без печати. См. снимок экрана:


Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас
Связанные статьи:
- Как создать динамическую область печати в Excel?
- Как распечатать только последнюю страницу листа в Excel?
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек