PSS ID Number: 148355
Article Last Modified on 9/11/2002
The information in this article applies to:
- Microsoft Excel for Windows 5.0
- Microsoft Excel for Windows 5.0c
- Microsoft Excel for the Macintosh 5.0
- Microsoft Excel 98 Macintosh Edition
- Microsoft Excel for Windows NT 5.0
- Microsoft Excel for Windows 95 7.0
- Microsoft Excel 97 for Windows
- Microsoft Visual Basic for Applications
This article was previously published under Q148355
For a Microsoft Excel 2002 version of this article, see
291304.
For a Microsoft Excel 2000 version of this article, see
213599.
SUMMARY
In Microsoft Excel, you can select cells in a range either manually or
by using some simple Microsoft Visual Basic for Applications code. This
article provides examples you can use to select a range of cells.
MORE INFORMATION
Examples of How to Select Cells Manually
To manually select all the data in a column, select the first cell, and press CTRL+SHIFT+DOWN ARROW.
Likewise, to manually select a row and all columns attached to the row,
press CTRL+SHIFT+DOWN ARROW+RIGHT ARROW. However, all data must be contiguous (that is, you cannot have blank rows or columns). Also, you can select the current region of data (contiguous data, with no blank rows or columns) by doing the following:
- On the Edit menu, click Go To.
- In the Go To dialog box, click Special.
- In the Go To Special dialog box, click Current Region, and then click OK.
You can also select this range by using simple Visual Basic for
Applications code.
NOTE: If you try to record this procedure by using the macro recorder, you do not receive the same results.
Examples of How to Use Visual Basic Code to Select Cells in a Range
Microsoft provides programming examples for illustration only, without warranty either
expressed or implied, including, but not limited to, the implied warranties of
merchantability and/or fitness for a particular purpose. This article assumes
that you are familiar with the programming language being demonstrated and the
tools used to create and debug procedures. Microsoft support professionals 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 needs. If you have limited programming experience, you may
want to contact a Microsoft Certified Partner or the Microsoft fee-based
consulting line at (800) 936-5200. For more information about Microsoft Certified
Partners, please visit the following Microsoft Web site:
For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:
The following Visual Basic code samples show you how to select
varying ranges.
If you know the beginning cell (in this example, the beginning cell is
cell C1), and you want to select down to the last cell (in the same
column) that has data but do not know that address, use the following code:
Sub SelectRangeDown()
Range("c1", Range("c1").End(xlDown)).Select
End Sub
NOTE: The SelectRangeDown macro assumes your data is contiguous. Otherwise, if there are blank cells in the column of data you are selecting, this macro may not select all of your cells in the column.
If your data begins in cell C1, but is not contiguous in that column, use
the following macro:
Sub SelectRangeDown_Discontiguous()
Range("c1", Range("c16384").End(xlUp)).Select
End Sub
In Microsoft Excel 97 and Microsoft Excel 98, this macro will be slightly
different because there are more rows in a worksheet in this version of
Microsoft Excel:
Sub SelectRangeDown_Discontiguous97()
Range("c1", Range("c65536").End(xlUp)).Select
End Sub
If you want to select from the active cell down and all columns to the
right (assuming contiguous data in all rows and columns), use the
following code:
Sub myrangearea()
Range(ActiveCell, ActiveCell.End(xlDown).End(xlToRight)).Select
End Sub
If you know the starting cell (in this sample code, the starting cell is
D1), and you want to select down the column and to the right, try using
the following code:
Sub RangeFromStart()
Range("d1", Range("d1").End(xlDown).End(xlToRight)).Select
End Sub
To select all data in the current region, use the following code:
Sub CurrentArea()
Selection.CurrentRegion.Select
End Sub
The examples included in this article show you how to select varying
ranges on the active worksheet of your current workbook.
For additional information about selecting ranges with Visual Basic for Applications (and for more advanced examples), please click the article number below to view the article in the Microsoft Knowledge Base:
120198
XL: How to Select Cells/Ranges Using Visual Basic Procedures
REFERENCES
For more information about selecting ranges with the
End property:
- Type end on a blank line on a module sheet.
- Select the word "end" that you typed in step 1.
- Press F1.
- In the Context Help dialog box, click the item for the Excel library, and then click Help (or click OK in Microsoft Excel versions 5.0 and 7.0).
Additional query words: 5.00c 8.00 ranges select adjacent
Keywords: kbdtacode kbhowto kbProgramming KB148355
Technology: kbExcel500 kbExcel500c kbExcel500Mac kbExcel500NT kbExcel95 kbExcel95Search kbExcel97Search kbExcel98 kbExcel98Search kbExcelMacsearch kbExcelSearch kbExcelWinSearch kbHWMAC kbOSMAC kbVBASearch kbZNotKeyword3 kbZNotKeyword6