You are currently offline, waiting for your internet to reconnect

How to determine whether a selected cell in an Excel worksheet is in a specified defined range by using a Visual Basic macro

Support for Office 2003 has ended

Microsoft ended support for Office 2003 on April 8, 2014. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

This article was previously published under Q259137
SUMMARY
You can use Microsoft Visual Basic for Applications to determine whether the cell that you just selected is in a specified range.
MORE INFORMATION
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements. To determine if the cell that you just selected is in a defined range, follow these steps:
  1. Start Microsoft Excel and open your worksheet.
  2. Select the range or ranges of cells that you want to name.
  3. On the Insert menu, point to Name, and then click Define.
  4. Type MyDefinedRange as the name for the range, and then click OK.
  5. Press ALT+F11 to open the Visual Basic Editor, double-click your worksheet in the Project Explorer, and then type or paste the following code:
    Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)        If Not Intersect(Target, Range("MyDefinedRange")) Is Nothing Then            MsgBox Target.Address & " is in MyDefinedRange."        'include code here.    Else            MsgBox Target.Address & " is NOT in MyDefinedRange."        'include code here.    End IfEnd Sub					
  6. Quit the Visual Basic Editor and return to your worksheet.
  7. Click anywhere in your worksheet.Note that you receive a message indicating whether you clicked in the specified range.
REFERENCES
For more information about naming cell ranges, click Microsoft Excel Help on the Help menu, type name cells in a workbook in the Office Assistant or the Answer Wizard, and then click Search to view the topic.

For more information about the Intersect method, click Microsoft Visual Basic Help on the Help menu, type intersect method example in the Office Assistant or the Answer Wizard, and then click Search to view the topics returned.
XL2000 XL97 XL98 XL2001 XL2002 XL2003 XL2004 XLX
Properties

Article ID: 259137 - Last Review: 01/27/2007 17:39:01 - Revision: 5.4

  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 97 Standard Edition
  • Microsoft Excel 2004 for Mac
  • Microsoft Excel X for Mac
  • Microsoft Excel 2001 for Mac
  • Microsoft Excel 98 for Macintosh
  • kbdtacode kbhowto kbinfo KB259137
Feedback