Please Note: This article is written for users of the following Microsoft Excel versions: 2007 and 2010. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: External Data Validation.

External Data Validation

Written by Allen Wyatt (last updated February 18, 2022)
This tip applies to Excel 2007 and 2010


6

The data validation feature of Excel is quite handy. You can use the feature to specify a range of values that are considered acceptable for user input. Normally, Excel expects you to specify your validation range as being on the same worksheet where you are defining the validation rule. If you try to enter a range that is on another worksheet or in another workbook, Excel balks and gives you an error message.

What if you want the validation range to be on another worksheet, just so you don't clutter up the current worksheet with extraneous data? The easiest way to do that is to follow these general steps:

  1. Select the range of cells you want to use as your data validation values.
  2. Display the Formulas tab of the ribbon.
  3. Click the Define Name tool in the Defined Names group. Excel displays the New Name dialog box.
  4. Enter a unique name for your data validation range, such as MyValRange, then click on OK.
  5. Select the cell for which you want to define a validation rule.
  6. Display the Data tab of the ribbon.
  7. Click the Data Validation tool in the Data Tools group. Excel displays the Data Validation dialog box.
  8. Use the Allow and Data drop-down lists to specify how you want Excel to validate the data. Depending on your selections, you will see Value, Minimum, or Maximum boxes appear in the dialog box.
  9. In the appropriate boxes (Value, Minimum, or Maximum), specify the name you gave your data validation range, in step 3. For instance, you could enter MyValRange.
  10. Click on OK.

This approach works great if the data validation range is in the same workbook. What if you want to use a data validation range that is in a different workbook entirely? You can trick Excel into accepting your external reference if, in step 7, you enter a formula such as the following:

=INDIRECT("[Book2]Sheet1!D6")

This formula uses the INDIRECT function to return the value at a cell on another worksheet, and the data validation feature will accept it with no problems. In this case the cell being checked is at cell D6 on Sheet1 of Book2. In order for this to work, you will need to make sure that Book2 is open at the same time that your main workbook is open.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (8191) applies to Microsoft Excel 2007 and 2010. You can find a version of this tip for the older menu interface of Excel here: External Data Validation.

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

Removing the Box from a Text Box

Insert a text box and it is automatically formatted to have a border around it. Getting rid of the border is easy if you ...

Discover More

Losing Data in a Shared Workbook

When you create a shared workbook, you run the risk of losing some of the data in that workbook. Here's a discussion ...

Discover More

Understanding Functions

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

Discover More

Professional Development Guidance! Four world-class developers offer start-to-finish guidance for building powerful, robust, and secure applications with Excel. The authors show how to consistently make the right design decisions and make the most of Excel's powerful features. Check out Professional Excel Development today!

More ExcelTips (ribbon)

Limiting Entries to Numeric Values

When creating a worksheet, you may need to limit what can be entered into a particular cell. Using data validation you ...

Discover More

Using Data Validation

Want to control what users put into a cell? It's easy to do using a feature called data validation, as described in this tip.

Discover More

Prohibiting Single-Digit Entries in a Cell

The Data Validation capabilities of Excel can be very helpful when you are trying to control what people can enter into a ...

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}] (all 7 characters, in the sequence shown) in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. 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 two more than 7?

2019-12-19 11:44:45

J. Woolley

@Mydnyte
There are several ways to avoid having your Master list modified by the employees:
1. Hide the Master list sheet: Right-click its tab and pick Hide.
2. Protect the Master list sheet: Click its ribbon Review > Protect Sheet.
3. Make the Master list workbook read-only: Right-click its file in File Explorer and pick Properties, then select Read-only.
You can use any combination of these.


2019-12-17 17:03:03

Mydnyte

This is awesome, however, I need this to work without the need to have the other workbook open. I have 62 employee workbooks that are all pulling data from a single workbook Master list. I don't want these people opening the Master list just to select the data from the Master list they need. How can this be accomplished?


2014-12-25 11:49:43

Vyron Bearden

Thank you for this tip. I recently tried to perform this operation and using Excel 2007, it would not allow me to use validation by referencing the range. I thought I had done this once before in an earlier version of Excel. I had spoken to someone else who suggested I try the named ranges so this just confirms to me that this is the correct approach.
Thanks again.
Vyron


2014-12-25 07:39:48

balthamossa2b

@SDollar

You could always replicate the desired range in the current worksheet through a fired Event like Worksheet_Change().

As for this tip, a favourite of mine is to use Data Validation + dynamic ranges in combo.


2014-10-13 17:55:03

SDollar

When following these general steps,the message "You may not use references to other workbooks for Data Validation criteria." is displayed. Please advise.


2012-03-24 12:35:39

CMC

In Excel 2010 when the validation range is on another worksheet is not anymore necessary to give it a name.It's now possible to refer to values in other worksheets in your workbook.


This Site

Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu 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.