How to print worksheet with validation circles in Excel?
In certain case, we may circle some invalid data to make them outstanding, but, when you need to print the worksheet with the validation circles, the circles will not be printed. Have you ever been suffered with this problem in Excel? Today, I will show you some quick tricks to solve this job.
- Reuse Anything: Add the most used or complex formulas, charts and anything else to your favorites, and quickly reuse them in the future.
- More than 20 text features: Extract Number from Text String; Extract or Remove Part of Texts; Convert Numbers and Currencies to English Words.
- Merge Tools: Multiple Workbooks and Sheets into One; Merge Multiple Cells/Rows/Columns Without Losing Data; Merge Duplicate Rows and Sum.
- Split Tools: Split Data into Multiple Sheets Based on Value; One Workbook to Multiple Excel, PDF or CSV Files; One Column to Multiple Columns.
- Paste Skipping Hidden/Filtered Rows; Count And Sum by Background Color; Send Personalized Emails to Multiple Recipients in Bulk.
- Super Filter: Create advanced filter schemes and apply to any sheets; Sort by week, day, frequency and more; Filter by bold, formulas, comment...
- More than 300 powerful features; Works with Office 2007-2019 and 365; Supports all languages; Easy deploying in your enterprise or organization.
In Excel, we can’t print the validation circles directly, but, we can copy and paste the data range with validation circles as picture, and then print it.
1. Select the data range that you want to print the circles.
2. Press Ctrl + C keys on keyboard to copy it, and then go to a new worksheet, click one cell, and right click, choose Paste Special > Picture, see screenshot:
3. And then your selection has been pasted as picture, and now when you print the new worksheet, the circles will be printed successfully.
If you don’t like to paste the data range as picture, the following VBA code also can help you.
1. After setting the data validation, please hold down the Alt + F11 keys in Excel to open the Microsoft Visual Basic for Applications window.
2. Then click Insert > Module, and paste the following macro in the Module Window.
VBA code: Insert red circles to the invalid data
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. And then press F5 key to execute this code, and the invalid data has been circled with the red oval, see screenshot:
4. When you go to print this worksheet which contains the red circles, the circles will be printed as well.
With this VBA code, the circles will not be removed with the Excel’s Clear Validation Circles feature, if you want to delete the circles, please apply the below code.
VBA code: Remove validation circles in worksheet
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