Microsoft Excel automatically formats new data that you type at the end of a list to match the previous rows. You can also format a list programmatically. This article contains a sample Microsoft Visual Basic for Applications procedure to shade every other rowin a selection.
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 see the patterns available in Microsoft Office Excel 2003 and in earlier versions, click Cells
menu, and then click the Patterns
To see the patterns available in Microsoft Office Excel 2007, follow these steps:
- On the Home tab, click Format in the Cells group . Then, click Format Cells..
- In the Format Cells dialog box, click the Fill tab.
drop-down list displays the available patterns. The pattern that is used in the following macro, referred to by its constant name, xlGray16, is the fifth one from the right in the first row.
The following macro sets the pattern in every other row of the currentselection to xlGray16.
Sample Visual Basic Procedure
Sub ShadeEveryOtherRow() Dim Counter As Integer 'For every row in the current selection... For Counter = 1 To Selection.Rows.Count 'If the row is an odd number (within the selection)... If Counter Mod 2 = 1 Then 'Set the pattern to xlGray16. Selection.Rows(Counter).Interior.Pattern = xlGray16 End If NextEnd Sub
This macro runs only on the rows of the selected range. If you add any new rows of data after you run the macro, you must run the macro again with all the new rows of data selected.
This process can also be done manually by using conditional formatting.
For additional information about how to format every other row by using conditional formatting, click the following article number to view the article in the Microsoft Knowledge Base:
How to use conditional formatting to shade every other row in Excel
You can also format a list by using the AutoFormat
menu command. In Excel 2003 and in Microsoft Excel 2002, the AutoFormat
menu command is on the Format
menu. In Excel 2007, you have to add the AutoFormat
menu command to the Quick Access Toolbar. To do this, follow these steps:
- Click Microsoft Office Button, and then click Excel Options.
- Click Customize.
- Click to select the All Commands under the Choose commands from.
- Click AutoFormat, click Add, and then click OK.