Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Non-Printing Controls.

Non-Printing Controls

by Allen Wyatt
(last updated September 28, 2013)

2

Excel allows you to place some special controls in your worksheet which can make it easier to input information. For instance, you can add a drop-down control that allows your user to select data from a given set that you have defined.

While these controls are handy, they can be distracting when it comes time to print your worksheet. They will print, but they take away from the other data you want people to focus upon in the printout.

As a solution, many people simply define print areas that don't include the cells over which the controls appear. For example, if the controls are placed over some cells in column B, you can define a print area that begins with column C. (Remember that the selections in a control can be assigned to any cell in the worksheet through the use of the Linked Cell property of the control. Thus, a change in the control results in a change in some value in a cell in the worksheet. This means that the appearance of the control is independent from the appearance of the data selected in the control.)

Another solution is to simply turn off the printing of the control. For instance, you could have the control appear over the top of cell C3, and the value of C3 is linked to the control. You can then follow these steps to turn off printing of the control:

  1. Right-click on the control. Excel displays a Context menu.
  2. Choose Format Control from the Context menu. Excel displays the Control tab of the Format Control dialog box.
  3. Make sure the Properties tab is selected.
  4. Clear the Print Object check box.
  5. Click on OK.

If you prefer to work directly with the control's properties, you can follow these steps instead:

  1. Right-click on the control. Excel displays a Context menu.
  2. Choose Properties from the Context menu. Excel displays the Properties dialog box for the control.
  3. Change the PrintObject property to False.
  4. Click on OK.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (3081) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Non-Printing Controls.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He  is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Understanding Functions

Do some macro programming in VBA and you'll quickly find out that you can use functions to extend the power and flexibility ...

Discover More

Using AutoCorrect to Start Macros

As you are typing, AutoCorrect provides a "check" that what you are entering doesn't match some pre-defined error triggers. ...

Discover More

Switching Editing Location

Excel allows you to edit the contents of a cell in two places—the cell itself or in the Formula bar. If you want to ...

Discover More

Solve Real Business Problems Master business modeling and analysis techniques with Excel and transform data into bottom-line results. This hands-on, scenario-focused guide shows you how to use the latest Excel tools to integrate data from multiple tables. Check out Microsoft Excel 2013 Data Analysis and Business Modeling today!

More ExcelTips (menu)

Using Less Paper on Printouts

If a worksheet contains nothing but a bunch of values in column A, you may be loathe to print the worksheet and "waste" a ...

Discover More

Setting Print Titles

Excel allows you to specify certain rows or columns that will be repeated on the pages of a printout. Here's how to set those ...

Discover More

Preventing Printing

Want to prevent your worksheet from being printed? You may be out of luck, as a determined person may be able to find a way ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is 9 + 4?

2014-10-11 05:57:36

Barry

@Atvrhtd
I had a similar situation regarding the sending out of Invoices. I wrote a macro to convert the relevant worksheet to a PDF (this is in-built in Excel 2007 onwards) then send it as an email attachment to the specified Client with pre-defined Subject, & Body Text.
[The macro also saves a copy of the invoice to the Customer file and makes an entry into the Sales Ledger].

This code snippet creates the PDF file:

shtInvoiceTemplate.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=fPath & fNewName & ".pdf", _
quality:=xlQualityStandard, _
includedocproperties:=False, _
ignoreprintareas:=False, _
To:=2, _
openafterpublish:=False

NB: shtInvoiceTemplate, fPAth, fNewName have been previously defined ShtINvoiceTemplate is as the name implies the worksheet which I as as the Invoice template, fPAth and FNewName are the path and filename of the PDF file to be created.

I then invoke the following sub routine to send the email. Note this expects that you are using Microsoft Outlook as your email Client.

Sub SendeMail(strTo As String, strSubject As String, strBody As String, Optional strCC As String, Optional strBCC As String, Optional strAttachment As String)
'Working in Excel 2003-2013
'strAttachment is the full filepath and filename as a string

Dim OutApp As Object
Dim OutMail As Object

Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)

On Error Resume Next
With OutMail
.To = strTo
.CC = strCC
.BCC = strBCC
.Subject = strSubject
.Body = strBody & BCSSig
.Attachments.Add (strAttachment)
.Send 'or use .Display
End With
On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing
End Sub


2014-10-10 23:58:46

Atvrhtd

I have excel 2003. I know its old.
I need to email receipts to customer from a custom excel form. The Receipt is one tab or sheet of a multi-tab/sheet excel service file. I do not want to to email the whole file. Only one sheet of the file.
That sheet (only) also needs to be non-printable and locked read only. But the file is not read only and not locked.
I am not talking about "set print area".
So I got these tasks
1. Lock a single sheet in a file and/or set it to read only
2 Email it.

I am guessing I will have to copy/Paste the info into a separate file. then email it unless you have a better method.
I do have office 2010 if that helps. But i dislike it.
Let me know if you can help.
ATVrhtd@gmail.com


This Site

Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.