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

Intelligently Starting a New Paragraph

When using styles in a document, you can increase your productivity by letting Word know what paragraph style you expect ...

Discover More

Counting Names Based on Two Criteria

Need to figure out how many rows in a worksheet meet two criteria that you specify? Here's how to get the info you desire.

Discover More

Deleting a Macro

Macros are often created to accomplish a specific task, after which they are no longer needed. If you need to delete a ...

Discover More

Program Successfully in Excel! John Walkenbach's name is synonymous with excellence in deciphering complex technical topics. With this comprehensive guide, "Mr. Spreadsheet" shows how to maximize your Excel experience using professional spreadsheet application development tips from his own personal bookshelf. Check out Excel 2013 Power Programming with VBA today!

More ExcelTips (ribbon)

Stopping Validated Data from being Overwritten

Data Validation is a great tool to make sure that data entered in a cell meets whatever criteria you decide. Its ...

Discover More

Limiting Entry of Names

When inputting information into a worksheet, you may need a way to limit what can be entered. This scenario is a prime ...

Discover More

Adding Pop-Up Documentation to a Cell

Want to have a small help screen pop up when a user selects a particular cell? This can be done by using data validation, ...

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 three minus 2?

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.