Как распечатать лист с кругами проверки в Excel?
В некоторых случаях мы можем обвести некоторые недопустимые данные, чтобы сделать их заметными, но когда вам нужно распечатать лист с кругами проверки, эти круги не будут напечатаны. Были ли у вас проблемы с этим в Excel? Сегодня я покажу вам несколько быстрых способов решить эту задачу.
Распечатайте лист с кругами проверки, вставив их как изображение
Распечатайте лист с кругами проверки, используя код VBA
Распечатайте лист с кругами проверки, вставив их как изображение
В Excel мы не можем напрямую печатать круги проверки, но мы можем копировать и вставлять диапазон данных с кругами проверки как изображение, а затем распечатать его.
1. Выберите диапазон данных, который вы хотите распечатать с кругами.
2. Нажмите клавиши Ctrl + C на клавиатуре, чтобы скопировать его, затем перейдите на новый лист, щелкните по одной ячейке, нажмите правой кнопкой мыши, выберите Вставить специальным образом > Изображение, см. скриншот:

3. И теперь ваш выбор был вставлен как изображение, и при печати нового листа круги будут успешно напечатаны.

Распечатайте лист с кругами проверки, используя код VBA
Если вы не хотите вставлять диапазон данных как изображение, следующий код VBA также может помочь вам.
1. После установки проверки данных нажмите и удерживайте клавиши Alt + F11 в Excel, чтобы открыть окно Microsoft Visual Basic for Applications.
2. Затем нажмите Вставка > Модуль и вставьте следующий макрос в окно Модуля.
Код VBA: Вставить красные круги для недопустимых данных
Sub AddValidationCirclesForPrinting()
'Update 20140724
Dim Rng As Range
Dim WorkRng As Range
Dim xCount As Integer
Dim xShape As Shape
On Error Resume Next
Set WorkRng = Application.ActiveSheet.Cells.SpecialCells(xlCellTypeAllValidation)
If WorkRng Is Nothing Then
Exit Sub
End If
xCount = 0
For Each Rng In WorkRng
If Not Rng.Validation.Value Then
Set xShape = Application.ActiveSheet.Shapes.AddShape(msoShapeOval, Rng.Left - 2, Rng.Top - 2, Rng.Width + 4, Rng.Height + 4)
xShape.Fill.Visible = msoFalse
xShape.Line.ForeColor.SchemeColor = 10
xShape.Line.Weight = 1.25
xCount = xCount + 1
xShape.Name = "InvalidData_" & xCount
End If
Next
Exit Sub
End Sub
3. Затем нажмите клавишу F5 для выполнения этого кода, и недопустимые данные будут обведены красным овалом, см. скриншот:

4. При печати этого листа, содержащего красные круги, они также будут напечатаны.
Примечание:
С помощью этого кода VBA круги не будут удалены функцией Очистить круги проверки в Excel. Если вы хотите удалить круги, пожалуйста, примените следующий код.
Код VBA: Удалить круги проверки на листе
Sub RemoveValidationCircles()
'Update 20140724
Dim xShape As Shape
For Each xShape In Application.ActiveSheet.Shapes
If xShape.Name Like "InvalidData_*" Then
xShape.Delete
End If
Next
End Sub
Связанная статья:
Как обвести недопустимые данные в Excel?
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Щелкните здесь, чтобы получить наиболее нужную вам функцию...
Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
- Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!