Chapter 11. Introducing Formulas and Functions

<feature><title>In This Chapter</title> </feature>

Formulas are what make a spreadsheet program so useful. If it weren’t for formulas, a spreadsheet would simply be a glorified word-processing document that has great support for tabular information. You use formulas in your Excel worksheets to calculate results from the data stored in the worksheet. When data changes, those formulas calculate updated results with no extra effort on your part. This chapter introduces formulas and functions and helps you get up to speed with this important element.

Understanding Formula Basics

A formula is entered into a cell. It performs a calculation of some type and returns a result, which is displayed in the cell. Formulas use a variety of operators and worksheet functions to work with values and text. The values and text used in formulas can be located in other cells, which makes changing data easy and gives worksheets their dynamic nature. For example, you can see multiple scenarios quickly by changing the data in a worksheet and letting your formulas do the work.

A formula can consist of any of these elements:

  • Mathematical operators, such as + (for addition) and * (for multiplication)

  • Cell references (including named cells and ranges)

  • Values or text

  • Worksheet functions (such as SUM or AVERAGE)

New Feature

When you’re working with a table, a new feature in Excel 2007 enables you to create formulas that use column names from the table—which can make your formulas much easier to read. I discuss table formulas later in this chapter. (See “Using Formulas In Tables.”)

After you enter a formula, the cell displays the calculated result of the formula. The formula itself appears in the Formula bar when you select the cell, however.

Following are a few examples of formulas:

=150*.05

Multiplies 150 times 0.05. This formula uses only values and isn’t all that useful because it always returns the same result. You may as well just enter the value 7.5 into the cell.

=A1+A2

Adds the values in cells A1 and A2.

=Income-Expenses

Subtracts the value in the cell named Expenses from the value in the cell named Income.

=SUM(A1:A12)

Adds the values in the range A1:A12.

=A1=C12

Compares cell A1 with cell C12. If they are identical, the formula returns TRUE; otherwise it returns FALSE.

Note

Formulas always begin with the equal sign so that Excel can distinguish them from text.

Using operators in formulas

Excel lets you use a variety of operators in your formulas. Operators are symbols that indicate the type of mathematical operation you want the formula to perform. Table 11.1 lists the operators that Excel recognizes. In addition to these, Excel has many built-in functions that enable you to perform additional calculations.

Table 11.1. Operators Used in Formulas

Operator

Name

+

Addition

-

Subtraction

*

Multiplication

/

Division

^

Exponentiation

&

Concatenation

=

Logical comparison (equal to)

>

Logical comparison (greater than)

<

Logical comparison (less than)

>=

Logical comparison (greater than or equal to)

<=

Logical comparison (less than or equal to)

<>

Logical comparison (not equal to)

You can, of course, use as many operators as you need to perform the desired calculation.

Following are some examples of formulas that use various operators.

Formula

What It Does

="Part-"&"23A"

Joins (concatenates) the two text strings to produce Part-23A.

=A1&A2

Concatenates the contents of cell A1 with cell A2. Concatenation works with values as well as text. If cell A1 contains 123 and cell A2 contains 456, this formula would return the value 123456.

=6^3

Raises 6 to the third power (216).

=216^(1/3)

Returns the cube root of 216 (6).

=A1<A2

Returns TRUE if the value in cell A1 is less than the value in cell A2. Otherwise, it returns FALSE. Logical-comparison operators also work with text. If A1 contained Bill and A2 contained Julia, the formula would return TRUE, because Bill comes before Julia in alphabetical order.

=A1<=A2

Returns TRUE if the value in cell A1 is less than or equal to the value in cell A2. Otherwise, it returns FALSE.

=A1<>A2

Returns TRUE if the value in cell A1 isn’t equal to the value in cell A2. Otherwise, it returns FALSE.

Understanding operator precedence in formulas

When Excel calculates the value of a formula, it uses certain rules to determine the order in which the various parts of the formula are calculated. You need to understand these rules if you want your formulas to produce the desired results.

Table 11.2 lists the Excel operator precedence. This table shows that exponentiation has the highest precedence (it’s performed first) and logical comparisons have the lowest precedence (they’re performed last).

Table 11.2. Operator Precedence in Excel Formulas

Symbol

Operator

Precedence

^

Exponentiation

1

*

Multiplication

2

/

Division

2

+

Addition

3

-

Subtraction

3

&

Concatenation

4

=

Equal to

5

<

Less than

5

>

Greater than

5

You can use parentheses to override the Excel’s built-in order of precedence. Expressions within parentheses are always evaluated first.

The following formula uses parentheses to control the order in which the calculations occur. In this case, cell B3 is subtracted from cell B2 and the result is multiplied by cell B4:

=(B2-B3)*B4

If you enter the formula without the parentheses, Excel computes a different answer. Because multiplication has a higher precedence, cell B3 is multiplied by cell B4. Then this result is subtracted from cell B2, which isn’t what was intended.

The formula without parentheses looks like this:

=B2-B3*B4

It’s a good idea to use parentheses even when they aren’t strictly necessary. Doing so helps to clarify what the formula is intended to do. For example, the following formula makes it perfectly clear that B3 should be multiplied by B4, and the result subtracted from cell B2. Without the parentheses, you would need to remember Excel’s order of precedence.

=B2-(B3*B4)

You can also nest parentheses within formulas—that is, put them inside other parentheses. If you do so, Excel evaluates the most deeply nested expressions first—and then works its way out. Here’s an example of a formula that uses nested parentheses:

=((B2*C2)+(B3*C3)+(B4*C4))*B6

This formula has four sets of parentheses—three sets are nested inside the fourth set. Excel evaluates each nested set of parentheses and then sums the three results. This result is then multiplied by the value in B6.

Although the preceding formula uses four sets of parentheses, only the outer set is really necessary. If you understand operator precedence, it should be clear that you can rewrite this formula as:

=(B2*C2+B3*C3+B4*C4)*B6

Again, using the extra parentheses makes the calculation much clearer.

Every left parenthesis, of course, must have a matching right parenthesis. If you have many levels of nested parentheses, keeping them straight can sometimes be difficult. If the parentheses don’t match, Excel displays a message explaining the problem—and won’t let you enter the formula.

In some cases, if your formula contains mismatched parentheses, Excel may propose a correction to your formula. Figure 11.1 shows an example of the Formula AutoCorrect feature. You may be tempted simply to accept the proposed correction, but be careful—in many cases, the proposed formula, although syntactically correct, isn’t the formula you intended, and it will produce an incorrect result.

Excel’s Formula AutoCorrect feature often suggests a correction to an erroneous formula.

Figure 11.1. Excel’s Formula AutoCorrect feature often suggests a correction to an erroneous formula.

Tip

Excel lends a hand in helping you match parentheses. When the insertion point moves over a parenthesis while you’re editing a cell, Excel momentarily bolds it—and does the same with its matching parenthesis.

Using functions in your formulas

Most formulas you create use worksheet functions. These functions enable you to greatly enhance the power of your formulas and perform calculations that are difficult (or even impossible) if you use only the operators discussed previously. For example, you can use the TAN function to calculate the tangent of an angle. You can’t do this calculation by using only the mathematical operators.

Examples of formulas that use functions

A worksheet function can simplify a formula significantly. To calculate the average of the values in 10 cells (A1:A10) without using a function, you’d have to construct a formula like this:

=(A1+A2+A3+A4+A5+A6+A7+A8+A9+A10)/10

Not very pretty, is it? Even worse, you would need to edit this formula if you added another cell to the range. Fortunately, you can replace this formula with a much simpler one that uses one of Excel’s built-in worksheet functions:

=AVERAGE(A1:A10)

The following formula demonstrates how using a function can enable you to perform calculations that would not be possible otherwise. If (for example) you need to determine the largest value in a range, a formula can’t tell you the answer without using a function. Here’s a simple formula that returns the largest value in the range A1:D100:

=MAX(A1:D100)

Functions also can sometimes eliminate manual editing. Assume that you have a worksheet that contains 1,000 names in cells A1:A1000, and all names appear in all-capital letters. Your boss sees the listing and informs you that the names will be mail-merged with a form letter—so all uppercase is not acceptable; for example, JOHN F. SMITH must appear as John F. Smith. You could spend the next several hours reentering the list—or you could use a formula such as the following, which uses a function to convert the text in cell A1 to the proper case:

=PROPER(A1)

Enter this formula once in cell B1 and then copy it down to the next 999 rows. Then select B1:B1000 and use Home Examples of formulas that use functions Clipboard Examples of formulas that use functions Copy to copy the range. Next, with B1:B1000 still selected, use Home Examples of formulas that use functions Clipboard Examples of formulas that use functions Paste Values to convert the formulas to values. Delete the original column, and you’ve just accomplished several hours of work in less than a minute.

One last example should convince you of the power of functions. Suppose you have a worksheet that calculates sales commissions. If the salesperson sold more than $100,000 of product, the commission rate is 7.5 percent; otherwise the commission rate is 5.0 percent. Without using a function, you would have to create two different formulas and make sure that you used the correct formula for each sales amount. A better solution is to write a formula that uses the IF function to ensure that you calculate the correct commission, regardless of sales amount:

=IF(A1<100000,A1*5%,A1*7.5%)

This formula performs some simple decision-making. The formula checks the value of cell A1. If this value is less than 100,000, the formula returns cell A1 multiplied by 5 percent. Otherwise it returns what’s in cell A1, multiplied by 7.5 percent.

Function arguments

In the preceding examples, you may have noticed that all the functions used parentheses. The information inside the parentheses is called the list of arguments.

Functions vary in how they use arguments. Depending on what it has to do, a function may use

  • No arguments

  • One argument

  • A fixed number of arguments

  • An indeterminate number of arguments

  • Optional arguments

An example of a function that doesn’t use an argument is the NOW function, which returns the current date and time. Even if a function doesn’t use an argument, you must still provide a set of empty parentheses, like this:

=NOW()

If a function uses more than one argument, you must separate each argument with a comma. The examples at the beginning of the chapter used cell references for arguments. Excel is quite flexible when it comes to function arguments, however. An argument can consist of a cell reference, literal values, literal text strings, expressions, and even other functions.

Note

A comma is the list-separator character for the U.S. version of Excel. Some other versions may use a semicolon. The list separator is a Windows setting, which can be adjusted in the Windows Control Panel (the Regional and Language Options dialog box).

More about functions

All told, Excel includes 340 functions. And if that’s not enough, you can purchase additional specialized functions from third-party suppliers—and even create your own custom functions (by using VBA) if you’re so inclined.

Some users feel a bit overwhelmed by the sheer number of functions, but you’ll probably find that you use only a dozen or so on a regular basis. And as you’ll see, Excel’s Insert Function dialog box (described later in this chapter) makes it easy to locate and insert a function, even if it’s not one that you use frequently.

Cross-Ref

You’ll find many examples of Excel’s built-in functions in Chapters 12 through 18. Appendix A contains a complete listing of Excel’s worksheet functions, with a brief description of each. Chapter 40 covers the basics of creating custom functions with VBA.

Entering Formulas into Your Worksheets

As I mentioned earlier, a formula must begin with an equal sign to inform Excel that the cell contains a formula rather than text. Excel provides two ways to enter a formula into a cell: manually or by pointing to cell references. The following sections discuss each way in detail.

New Feature

Excel 2007 provides additional assistance when you create formulas by displaying a drop-down list that contains function names and range names. The items displayed in the list are determined by what you’ve already typed. For example, if you’re entering a formula and type the letter T, you’ll see the drop-down list shown in Figure 11.2. If you type an additional letter, the list is shortened to show only the matching functions. To have Excel autocomplete an entry in that list, use the arrow keys to highlight the entry, and then press Tab. Notice that highlighting a function in the list also displays a brief description of the function. See the sidebar “Using Formula Autocomplete” for an example of how this new feature works.

Excel 2007 displays a drop-down list when you enter a formula.

Figure 11.2. Excel 2007 displays a drop-down list when you enter a formula.

Entering formulas manually

Entering a formula manually involves, well, entering a formula manually. In a selected cell, you simply type an equal sign (=) followed by the formula. As you type, the characters appear in the cell and in the Formula bar. You can, of course, use all the normal editing keys when entering a formula.

Entering formulas by pointing

Even though you can enter formulas by typing in the entire formula, Excel provides another method of entering formulas that is generally easier, faster, and less error-prone. This method still involves some manual typing, but you can simply point to the cell references instead of typing their values manually. For example, to enter the formula =A1+A2 into cell A3, follow these steps:

  1. Move the cell pointer to cell A3.

  2. Type an equal sign (=) to begin the formula. Notice that Excel displays Enter in the status bar (bottom left of your screen).

  3. Press the up arrow twice. As you press this key, Excel displays a faint moving border around cell A1, and the cell reference appears in cell A3 and in the Formula bar. In addition, Excel displays Point in the status bar.

  4. Type a plus sign (+). A solid-color border replaces the faint border, and Enter reappears in the status bar.

  5. Press the up arrow again, which puts the moving border around cell A2, and adds that cell address to the formula.

  6. Press Enter to end the formula.

Tip

You can also point to the data cells by using your mouse.

Pasting range names into formulas

If your formula uses named cells or ranges, you can either type the name in place of the address or choose the name from a list and have Excel insert the name for you automatically. Two ways to insert a name into a formula are available:

  • Select the name from the drop-down list: To use this method, you must know at least the first character of the name. When you’re entering the formula, type the first character and then select the name from the drop-down list.

  • Press F3: This key displays the Paste Name dialog box. Select the name from the list and click OK (or just double-click the name). Excel will enter the name into your formula. If no names are defined, pressing F3 has no effect.

Figure 11.3 shows an example. The worksheet contains two defined names: Expenses and Sales. The Paste Name dialog box is being used to insert a name (Sales) into the formula being entered in cell B11.

You can use the Paste Name dialog box to quickly enter a defined name into a formula.

Figure 11.3. You can use the Paste Name dialog box to quickly enter a defined name into a formula.

Cross-Ref

Refer to Chapter 5 for information about defining names.

Inserting functions into formulas

The easiest way to enter a function into a formula is to use the drop-down list that Excel displays while you type a formula. In order to use this method, however, you must know at least the first character of the function’s name.

Another way to insert a function is to use the Function Library group on the Formulas tab (see Figure 11.4). This is especially useful if you can’t remember which function you need. Click the function category (Financial, Logical, Text, etc.) and you’ll get a list of the function in that category. Click the function you want, and Excel displays its Function Arguments dialog box. This is where you enter the function’s arguments. In addition, you can click the Help On This Function link to learn more about the selected function.

You can insert a function by selecting it from one of the function categories.

Figure 11.4. You can insert a function by selecting it from one of the function categories.

Yet another way to insert a function into a formula is to use Excel’s Insert Function dialog box (see Figure 11.5). You can access this dialog box in several ways:

  • By using the Formulas You can insert a function by selecting it from one of the function categories. Function Library You can insert a function by selecting it from one of the function categories. Insert Function command.

  • By clicking the Insert Function icon, which is directly to the left of the Formula bar. This button displays fx.

  • By pressing Shift+F3.

The Insert Function dialog box.

Figure 11.5. The Insert Function dialog box.

The Insert Function dialog box shows a drop-down list of function categories. Select a category, and the functions in that category are displayed in the list box. To access a function that you’ve used recently, select Most Recently Used from the drop-down list.

If you’re not sure which function you need, you can search for the appropriate function by using the Search For A Function box at the top of the dialog box. Enter your search terms, click Go, and you’ll get a list of relevant functions. When you select a function in the Select A Function list box, Excel displays the function (and its argument names) in the dialog box along with a brief description of what the function does.

When you locate the function you want to use, highlight it and click OK. Excel then displays its Function Arguments dialog box, as shown in Figure 11.6. Use this dialog box to specify the arguments for the function. The dialog box will vary, depending on the function you’re inserting, and it will show one text box for each of the function’s arguments. To use a cell or range reference as an argument, you can enter the address manually or click inside the argument box and then select (that is, point to) the cell or range in the sheet). After you’ve specified all the function arguments, click OK.

The Function Arguments dialog box.

Figure 11.6. The Function Arguments dialog box.

Tip

Yet another way to insert a function while you’re entering a formula is to use the Function List to the left of the Formula bar. When you are entering or editing a formula, the space normally occupied by the Name box displays a list of the functions you’ve used most recently. After you select a function from this list, Excel displays the Function Arguments dialog box.

Function entry tips

Following are some additional tips to keep in mind when you use the Insert Function dialog box to enter functions:

  • You can use the Insert Function dialog box to insert a function into an existing formula. Just edit the formula and move the insertion point to the location at which you want to insert the function. Then open the Insert Function dialog box (using any of the methods described above) and select the function.

  • You can also use the Function Arguments dialog box to modify the arguments for a function in an existing formula. Click the function in the Formula bar and then click the Insert Function button (the fx button, to the left of the Formula bar).

  • If you change your mind about entering a function, click the Cancel button.

  • How many boxes you see in the Function Arguments dialog box depends on the number of arguments used in the function you selected. If a function uses no arguments, you won’t see any boxes. If the function uses a variable number of arguments (such as the AVERAGE function), Excel adds a new box every time you enter an optional argument.

  • As you provide arguments in the Function Argument dialog box, the value of each argument is displayed to the right of each box.

  • A few functions, such as INDEX, have more than one form. If you choose such a function, Excel displays another dialog box that lets you choose which form you want to use.

  • As you become familiar with the functions, you can bypass the Insert Function dialog box and enter the function directly. Excel prompts you with argument names as you enter the function.

Editing Formulas

After you’ve entered a formula, you can (of course) edit that formula. You may need to edit a formula if you make some changes to your worksheet and then have to adjust the formula to accommodate the changes. Or the formula may return an error value, in which case you edit the formula to correct the error.

The following are some of the ways to get into cell edit mode:

  • Double-click the cell, which enables you to edit the cell contents directly in the cell.

  • Press F2, which enables you to edit the cell contents directly in the cell.

  • Select the cell that you want to edit, and then click in the Formula bar. This enables you to edit the cell contents in the Formula bar.

  • If the cell contains a formula that returns an error, Excel will display a small triangle in the upper-left corner of the cell. Activate the cell, and you’ll see a Smart Tag. Click the Smart Tag, and you can choose one of the options for correcting the error. (The options will vary according to the type of error in the cell.)

Tip

You can control whether Excel displays these formula-error-checking Smart Tags in the Formulas section of the Excel Options dialog box. To display this dialog box, select Office Tip Excel Options. If you remove the check mark from Enable Background Error Checking, Excel no longer displays these Smart Tags.

While you’re editing a formula, you can select multiple characters either by dragging the mouse cursor over them or by pressing Shift while you use the direction keys.

Tip

If you have a formula that you can’t seem to edit correctly, you can convert the formula to text and tackle it again later. To convert a formula to text, just remove the initial equal sign (=). When you’re ready to try again, type the initial equal sign to convert the cell contents back to a formula.

Using Cell References in Formulas

Most formulas you create include references to cells or ranges. These references enable your formulas to work dynamically with the data contained in those cells or ranges rather than being restricted to fixed values. For example, if your formula refers to cell A1 and you change the value contained in A1, the formula result changes to reflect the new value. If you didn’t use references in your formulas, you would need to edit the formulas themselves in order to change the values used in the formulas.

Using relative, absolute, and mixed references

When you use a cell (or range) reference in a formula, you can use three types of references:

  • Relative: The row and column references can change when you copy the formula to another cell because the references are actually offsets from the current row and column.

  • Absolute: The row and column references do not change when you copy the formula because the reference is to an actual cell address.

  • Mixed: Either the row or column reference is relative, and the other is absolute.

An absolute reference uses two dollar signs in its address: one for the column letter and one for the row number (for example, $A$5). Excel also allows mixed references in which only one of the address parts is absolute (for example, $A4 or A$4).

By default, Excel creates relative cell references in formulas. The distinction becomes apparent when you copy a formula to another cell.

Figure 11.7 shows a simple worksheet. The formula in cell D2, which multiplies the quantity by the price, is

=B2*C2
Copying a formula that contains relative references.

Figure 11.7. Copying a formula that contains relative references.

This formula uses relative cell references. Therefore, when the formula is copied to the cells below it, the references adjust in a relative manner. For example, the formula in cell D3 is

=B3*C3

But what if the cell references in D2 contained absolute references, like this?

=$B$2*$C$2

In this case, copying the formula to the cells below would produce incorrect results. The formula in cell D3 would be exactly the same as the formula in cell D2.

Now I’ll extend the example to calculate sales tax, which is stored in cell B7 (see Figure 11.8). In this situation, the formula in cell D2 is

=B2*C2*$B$7
Formula references to the sales tax cell should be absolute.

Figure 11.8. Formula references to the sales tax cell should be absolute.

The quantity is multiplied by the price, and the result is multiplied by the sales-tax rate stored in cell B7. Notice that the reference to B7 is an absolute reference. When the formula in D2 is copied to the cells below it, cell D3 will contain this formula:

=B3*C3*$B$7

Here, the references to cells B2 and C2 were adjusted, but the reference to cell B7 was not—which is exactly what I want.

Figure 11.9 demonstrates the use of mixed references. The formulas in the C3:F7 range calculate the area for various lengths and widths. The formula in cell C3 is

=$B3*C$2
Using mixed cell references.

Figure 11.9. Using mixed cell references.

Notice that both cell references are mixed. The reference to cell B3 uses an absolute reference for the column ($B), and the reference to cell C2 uses an absolute reference for the row ($2). As a result, this formula can be copied down and across, and the calculations will be correct. For example, the formula in cell F7 is

=$B7*F$2

If C3 used either absolute or relative references, copying the formula would produce incorrect results.

On the CD-ROM

The workbook that demonstrates the various types of references is available on the companion CD-ROM. The file is named cell references.xlsx.

Note

When you cut and paste a formula (move it to another location), the cell references in the formula aren’t adjusted. Again, this is usually what you want to happen. When you move a formula, you generally want it to continue to refer to the original cells.

Changing the types of your references

You can enter nonrelative references (that is, absolute or mixed) manually by inserting dollar signs in the appropriate positions of the cell address. Or you can use a handy shortcut: the F4 key. When you’ve entered a cell reference (by typing it or by pointing), you can press F4 repeatedly to have Excel cycle through all four reference types.

For example, if you enter =A1 to start a formula, pressing F4 converts the cell reference to =$A$1. Pressing F4 again converts it to =A$1. Pressing it again displays =$A1. Pressing it one more time returns to the original =A1. Keep pressing F4 until Excel displays the type of reference that you want.

Note

When you name a cell or range, Excel (by default) uses an absolute reference for the name. For example, if you give the name SalesForecast to A1:A12, the Refers To box in the New Name dialog box lists the reference as $A$1:$A$12. This is almost always what you want. If you copy a cell that has a named reference in its formula, the copied formula contains a reference to the original name.

Referencing cells outside the worksheet

Formulas can also refer to cells in other worksheets—and the worksheets don’t even have to be in the same workbook. Excel uses a special type of notation to handle these types of references.

Referencing cells in other worksheets

To use a reference to a cell in another worksheet in the same workbook, use this format:

SheetName!CellAddress

In other words, precede the cell address with the worksheet name, followed by an exclamation point. Here’s an example of a formula that uses a cell on the Sheet2 worksheet:

=A1*Sheet2!A1

This formula multiplies the value in cell A1 on the current worksheet by the value in cell A1 on Sheet2.

Tip

If the worksheet name in the reference includes one or more spaces, you must enclose it in single quotation marks. (Excel does that automatically if you use the point-and-click method.) For example, here’s a formula that refers to a cell on a sheet named All Depts:

=A1*'All Depts'! A1

Referencing cells in other workbooks

To refer to a cell in a different workbook, use this format:

=[WorkbookName]SheetName!CellAddress

In this case, the workbook name (in square brackets), the worksheet name, and an exclamation point precede the cell address. The following is an example of a formula that uses a cell reference in the Sheet1 worksheet in a workbook named Budget:

=[Budget.xlsx]Sheet1!A1

If the workbook name in the reference includes one or more spaces, you must enclose it (and the sheet name) in single quotation marks. For example, here’s a formula that refers to a cell on Sheet1 in a workbook named Budget For 2008:

=A1*'[Budget For 2008.xlsx]Sheet1'!A1

When a formula refers to cells in a different workbook, the other workbook doesn’t have to be open. If the workbook is closed, however, you must add the complete path to the reference so that Excel can find it. Here’s an example:

=A1*'C:My Documents[Budget For 2008.xlsx]Sheet1'!A1

A linked file can also reside on another system that’s accessible on your corporate network. The formula below, for example, refers to a cell in a workbook in the files directory of a computer named DataServer.

='\DataServerfiles[budget.xlsx]Sheet1'!$D$7

Cross-Ref

Refer to Chapter 27 for more information about linking workbooks.

Tip

To create formulas that refer to cells not in the current worksheet, point to the cells rather than entering their references manually. Excel takes care of the details regarding the workbook and worksheet references. The workbook you’re referencing in your formula must be open if you’re going to use the pointing method.

Note

If you point to a different worksheet or workbook when creating a formula, you’ll notice that Excel always inserts absolute cell references. Therefore, if you plan to copy the formula to other cells, make sure that you change the cell references to relative before you copy.

Using Formulas In Tables

One of the most significant new features in Excel 2007 is its support for tables. In this section I describe how formulas work with tables.

Cross-Ref

See Chapter 6 for an introduction to the new table features.

Summarizing data in a table

Figure 11.10 shows a simple table with three columns. I entered the data, and then converted the range to a table by choosing Insert Summarizing data in a table Tables Summarizing data in a table Table. Note that I didn’t define any names, but the table is named Table1 by default.

A simple table with three columns.

Figure 11.10. A simple table with three columns.

On the CD-ROM

This workbook is available on the companion CD-ROM. It is named table formulas.xlsx.

If you’d like to calculate the total projected and total actual sales, you don’t even need to write a formula. Simply click a button to add a row of summary formulas to the table:

  1. Activate any cell in the table.

  2. Place a check mark next to Table Tools On the CD-ROM Design On the CD-ROM Table Style Options On the CD-ROM Total Row.

  3. Activate a cell in the Total Row and use the drop-down list to select the type of summary formula to use (see Figure 11.11). For example, to calculate the sum of the Actual column, select SUM from the drop-down list in cell D15. Excel creates this formula:

    =SUBTOTAL(109,[Actual])
    A drop-down list enables you to select a summary formula for a table column.

    Figure 11.11. A drop-down list enables you to select a summary formula for a table column.

For the SUBTOTAL function, 109 is an enumerated argument that represents SUM. The second argument for the SUBTOTAL function is the column name, in square brackets. Using the column name within brackets is a new way to create “structured” references within a table. (I discuss this further in an upcoming section, “Referencing data in a table.”)

Note

You can toggle the Total Row display on and off by using Table Tools Note Design Note Table Style Options Note Total Row. If you turn it off, the summary options you selected will be remembered when you turn it back on.

Using formulas within a table

In many cases, you’ll want to use formulas within a table. For example, in the table shown in Figure 11.11, you may want a column that shows the difference between the Actual and Projected amounts. As you’ll see, Excel 2007 makes this very easy.

  1. Activate cell E2 and type Difference for the column header. Excel automatically expands the table for you.

  2. Next move to cell E3 and type an equal sign to signify the beginning of a formula.

  3. Press the left arrow key. Excel displays [Actual], which is the column heading, in the Formula bar.

  4. Type a minus sign and then press left arrow twice. Excel displays [Projected] in your formula.

  5. Press Enter to end the formula. Excel copies the formula to all rows in the table.

Figure 11.12 shows the table with the new column.

The Difference column contains a formula.

Figure 11.12. The Difference column contains a formula.

If you examine the table, you’ll find this formula for all cells in the Difference column:

=[Actual]-[Projected]

Although the formula was entered into the first row of the table, that’s not necessary. Any time a formula is entered into an empty table column, it will automatically fill all the cells in that column. And if you need to edit the formula, Excel will automatically copy the edited formula to the other cells in the column.

The steps listed above used the pointing technique to create the formula. Alternatively, you could have entered it manually using standard cell references. For example, you could have entered the following formula in cell E3:

=D3-C3

If you type the cell references, Excel will still copy the formula to the other cells automatically.

One thing should be clear, however, about formulas that use the column headers: They are much easier to understand.

Referencing data in a table

Excel 2007 adds some news ways to refer to data that’s contained in a table by using the table name and column headers. There is no need to create names for these items. The table itself has a name (for example, Table1), and you can refer to data within the table by using column headers.

You can, of course, use standard cell references to refer to data in a table, but the new method has a distinct advantage: The names adjust automatically if the table size changes by adding or deleting rows.

Refer to the table shown in Figure 11.11. This table was given the name Table1 when it was created. To calculate the sum of all the data in the table, use this formula:

=SUM(Table1)

This formula will always return the sum of all the data, even if rows or columns are added or deleted. And if you change the name of Table1, Excel will adjust formulas that refer to that table automatically. For example, if you renamed Table1 to be AnnualData (by using the Name Manager), the preceding formula would be changed to:

=SUM(AnnualData)

Most of the time, you’ll want to refer to a specific column in the table. The following formula returns the sum of the data in the Actual column:

=SUM(Table1[Actual])

Notice that the column name is enclosed in square brackets. Again, the formula adjusts automatically if you change the text in the column heading.

Even better, Excel provides some helpful assistance when you create a formula that refers to data within a table. Figure 11.13 shows the formula autocomplete helping to create a formula by showing a list of the elements in the table.

The formula autocomplete feature is useful when creating a formula that refers to data in a table.

Figure 11.13. The formula autocomplete feature is useful when creating a formula that refers to data in a table.

Correcting Common Formula Errors

Sometimes, when you enter a formula, Excel displays a value that begins with a hash mark (#). This is a signal that the formula is returning an error value. You have to correct the formula (or correct a cell that the formula references) to get rid of the error display.

Tip

If the entire cell is filled with hash-mark characters, this means that the column isn’t wide enough to display the value. You can either widen the column or change the number format of the cell.

In some cases, Excel won’t even let you enter an erroneous formula. For example, the following formula is missing the closing parenthesis:

=A1*(B1+C2

If you attempt to enter this formula, Excel informs you that you have unmatched parentheses, and it proposes a correction. Often, the proposed correction is accurate, but you can’t count on it.

Table 11.3 lists the types of error values that may appear in a cell that has a formula. Formulas may return an error value if a cell to which they refer has an error value. This is known as the ripple effect—a single error value can make its way into lots of other cells that contain formulas that depend on that one cell.

Table 11.3. Excel Error Values

Error Value

Explanation

#DIV/0!

The formula is trying to divide by zero. This also occurs when the formula attempts to divide by what’s in a cell that is empty (that is, by nothing).

#NAME?

The formula uses a name that Excel doesn’t recognize. This can happen if you delete a name that’s used in the formula or if you have unmatched quotes when using text.

#N/A

The formula is referring (directly or indirectly) to a cell that uses the NA function to signal that data is not available. Some functions (for example, VLOOKUP) can also return #N/A.

#NULL!

The formula uses an intersection of two ranges that don’t intersect. (This concept is described later in the chapter.)

#NUM!

A problem with a value exists; for example, you specified a negative number where a positive number is expected.

#REF!

The formula refers to a cell that isn’t valid. This can happen if the cell has been deleted from the worksheet.

#VALUE!

The formula includes an argument or operand of the wrong type. An operand is a value or cell reference that a formula uses to calculate a result.

Handling circular references

When you’re entering formulas, you may occasionally see a Circular Reference Warning message, shown in Figure 11.14, indicating that the formula you just entered will result in a circular reference. A circular reference occurs when a formula refers to its own value—either directly or indirectly. For example, you create a circular reference if you enter =A1+A2+A3 into cell A3 because the formula in cell A3 refers to cell A3. Every time the formula in A3 is calculated, it must be calculated again because A3 has changed. The calculation could go on forever.

If you see this warning, you know that the formula you entered will result in a circular reference.

Figure 11.14. If you see this warning, you know that the formula you entered will result in a circular reference.

When you get the circular reference message after entering a formula, Excel gives you two options:

  • Click OK, and Excel displays a Help screen that tells you more about circular references.

  • Click Cancel to enter the formula as is.

Regardless of which option you choose, Excel displays a message in the left side of the status bar to remind you that a circular reference exists.

Warning

Excel won’t tell you about a circular reference if the Enable Interative Calculationsetting is in effect. You can check this setting in the Formulas section of the Excel Options dialog box. (To display this dialog box, select Office Warning Excel Options.) If Enable Interative Calculation is turned on, Excel performs the circular calculation exactly the number of times specified in the Maximum Iterations field (or until the value changes by less than 0.001 or whatever value is in the Maximum Change field). In a few situations, you may use a circular reference intentionally. In these cases, the Enable Interative Calculation setting must be on. However, it’s best to keep this setting turned off so you’re warned of circular references. Usually a circular reference indicates an error that you must correct.

Usually, a circular reference is quite obvious—easy to identify and correct. But when a circular reference is indirect—as when a formula refers to another formula that refers to yet another formula that refers back to the original formula—it may require a bit of detective work to get to the problem.

On the CD-ROM

The companion CD-ROM contains a workbook that demonstrates an intentional circular reference. This file is named circular reference.xlsx.

Specifying when formulas are calculated

You’ve probably noticed that Excel calculates the formulas in your worksheet immediately. If you change any cells that the formula uses, Excel displays the formula’s new result with no effort on your part. All this happens when Excel’s Calculation mode is set to Automatic. In Automatic Calculation mode (which is the default mode), Excel follows these rules when it calculates your worksheet:

  • When you make a change—enter or edit data or formulas, for example—Excel calculates immediately those formulas that depend on new or edited data.

  • If Excel is in the middle of a lengthy calculation, it temporarily suspends the calculation when you need to perform other worksheet tasks; it resumes calculating when you’re finished with your other worksheet tasks.

  • Formulas are evaluated in a natural sequence. In other words, if a formula in cell D12 depends on the result of a formula in cell D11, Excel calculates cell D11 before calculating D12.

Sometimes, however, you may want to control when Excel calculates formulas. For example, if you create a worksheet with thousands of complex formulas, you’ll find that processing can slow to a snail’s pace while Excel does its thing. In such a case, set Excel’s calculation mode to Manual—which you can do by choosing Formulas Specifying when formulas are calculated Calculation Specifying when formulas are calculated Calculation Options Specifying when formulas are calculated Manual (see Figure 11.15)

You can control when Excel calculates formulas.

Figure 11.15. You can control when Excel calculates formulas.

Tip

If your worksheet uses any data tables (described in Chapter 36), you may want to select the option labeled Automatically Except For Data Tables. Large data tables calculate notoriously slowly. Note: A data table is not the same as a table created by choosing Insert Tip Tables Tip Table.

When you’re working in Manual Calculation mode, Excel displays Calculate in the status bar when you have any uncalculated formulas. You can use the following shortcut keys to recalculate the formulas:

  • F9: Calculates the formulas in all open workbooks.

  • Shift+F9: Calculates only the formulas in the active worksheet. Other worksheets in the same workbook aren’t calculated.

  • Ctrl+Alt+F9: Forces a complete recalculation of all formulas.

  • Ctrl+Alt+Shift+F9: Re-evaluates all formula dependencies and forces a complete recalculation.

Note

Excel’s Calculation mode isn’t specific to a particular worksheet. When you change the Calculation mode, it affects all open workbooks, not just the active workbook.

Using Advanced Naming Techniques

Using range names can make your formulas easier to understand, easier to modify, and even help prevent errors. It’s much easier to deal with a meaningful name such as AnnualSales than with a range reference such as AB12:AB68.

Cross-Ref

See Chapter 5 for basic information regarding working with names.

Excel offers a number of advanced techniques that make using names even more useful. I discuss these techniques in the sections that follow.

Using names for constants

Many Excel users don’t realize that you can give a name to an item that doesn’t appear in a cell. For example, if formulas in your worksheet use a sales-tax rate, you would probably insert the tax-rate value into a cell and use this cell reference in your formulas. To make things easier, you would probably also name this cell something similar to SalesTax.

Here’s how to provide a name for a value that doesn’t appear in a cell:

  1. Choose Formulas Using names for constants Defined Names Using names for constants Define Name. Excel displays the New Name dialog box.

  2. Enter the name (in this case, SalesTax ) into the field labeled Name.

  3. Select a scope in which the name will be valid (either the entire workbook or a specific worksheet).

  4. Click the Refers To box, delete its contents, and replace the old contents with a value (such as .075).

  5. Use the Comment box to provide a comment about the name (optional).

  6. Click OK to close the New Name dialog box and create the name.

You just created a name that refers to a constant rather than a cell or range. Now if you type =SalesTax into a cell that’s within the scope of the name, this simple formula returns 0.075—the constant that you defined. You also can use this constant in a formula, such as =A1*SalesTax.

Tip

A constant also can be text. For example, you can define a constant for your company’s name.

Note

Named constants don’t appear in the Name box or in the Go To dialog box. This makes sense because these constants don’t reside anywhere tangible. They do appear in the drop-down list that’s displayed when you enter a formula—which is handy because you use these names in formulas.

Using names for formulas

Just as you can create a named constant, you can also create named formulas. As with named constants, named formulas don’t appear in the worksheet.

You create named formulas the same way you create named constants—by using the New Name dialog box. For example, you might create a named formula that calculates the monthly interest rate from an annual rate; Figure 11.16 shows an example. In this case, the name MonthlyRate refers to the following formula:

=Sheet1!$B$1/12

Excel lets you give a name to a formula that doesn’t exist in a worksheet cell.

Figure 11.16. Excel lets you give a name to a formula that doesn’t exist in a worksheet cell.

When you use the name MonthlyRate in a formula, it uses the value in B1 divided by 12. Notice that the cell reference is an absolute reference.

Naming formulas gets more interesting when you use relative references rather than absolute references. When you use the pointing technique to create a formula in the Refers To box of the New Name dialog box, Excel always uses absolute cell references—which is unlike its behavior when you create a formula in a cell.

For example, activate cell B1 on Sheet1 and create the name Cubed for the following formula:

=Sheet1!A1^3

In this example, the relative reference points to the cell to the left of the cell in which the name is used. Therefore, make certain that cell B1 is the active cell before you open the New Name dialog box; this is very important. The formula contains a relative reference; when you use this named formula in a worksheet, the cell reference is always relative to the cell that contains the formula. For example, if you enter =Cubed into cell D12, then cell D12 displays the contents of cell C12 raised to the third power (C12 is the cell directly to the left of D12).

Using range intersections

This section describes a concept known as range intersections—individual cells that two ranges have in common. Excel uses an intersection operator—a space character—to determine the overlapping references in two ranges. Figure 11.17 shows a simple example.

You can use a range-intersection formula to determine values.

Figure 11.17. You can use a range-intersection formula to determine values.

The formula in cell B9 is

=B1:B6 A3:D3

This formula returns 10, the value in cell B3—that is, the value at the intersection of the two ranges.

The intersection operator is one of three reference operators used with ranges. Table 11.4 lists these operators.

Table 11.4. Reference Operators for Ranges

Operator

What It Does

: (colon)

Specifies a range.

, (comma)

Specifies the union of two ranges. This operator combines multiple range references into a single reference.

(space)

Specifies the intersection of two ranges. This operator produces cells that are common to two ranges.

The real value of knowing about range intersections is apparent when you use names. Examine Figure 11.18, which shows a table of values. I selected the entire table and then used Formulas Reference Operators for Ranges Defined Names Reference Operators for Ranges Create From Selection to create names automatically by using the top row and left column.

When you use names, using a range-intersection formula to determine values is even more useful.

Figure 11.18. When you use names, using a range-intersection formula to determine values is even more useful.

Excel created the following names:

North

=Sheet1!$B$2:$E$2

Qtr1

=Sheet1!$B$2:$B$5

South

=Sheet1!$B$3:$E$3

Qtr2

=Sheet1!$C$2:$C$5

West

=Sheet1!$B$4:$E$4

Qtr3

=Sheet1!$D$2:$D$5

East

=Sheet1!$B$5:$E$5

Qtr4

=Sheet1!$E$2:$E$5

With these names defined, you can create formulas that are easy to read and use. For example, to calculate the total for Quarter 4, just use this formula:

=SUM(Qtr4)

To refer to a single cell, use the intersection operator. Move to any blank cell and enter the following formula:

=Qtr1 West

This formula returns the value for the first quarter for the West region. In other words, it returns the value that exists where the Qtr1 range intersects with the West range. Naming ranges in this manner can help you create very readable formulas.

Applying names to existing references

When you create a name for a cell or a range, Excel doesn’t automatically use the name in place of existing references in your formulas. For example, suppose you have the following formula in cell F10:

=A1-A2

If you define a name Income for A1 and Expenses for A2, Excel won’t automatically change your formula to =Income-Expenses. Replacing cell or range references with their corresponding names is fairly easy, however.

To apply names to cell references in formulas after the fact, start by selecting the range that you want to modify. Then choose Formulas Applying names to existing references Defined Names Applying names to existing references Define Name Applying names to existing references Apply Names. Excel displays the Apply Names dialog box, as shown in Figure 11.19. Select the names that you want to apply by clicking them and then click OK. Excel replaces the range references with the names in the selected cells.

Use the Apply Names dialog box to replace cell or range references with defined names.

Figure 11.19. Use the Apply Names dialog box to replace cell or range references with defined names.

Tips for Working with Formulas

In this section, I offer a few additional tips and pointers relevant to formulas.

Don’t hard-code values

When you create a formula, think twice before you use any specific value in the formula. For example, if your formula calculates sales tax (which is 6.5 percent), you may be tempted to enter a formula, such as the following:

+A1*.065

A better approach is to insert the sales tax rate in a cell—and use the cell reference. Or you can define the tax rate as a named constant, using the technique presented earlier in this chapter. Doing so makes modifying and maintaining your worksheet easier. For example, if the sales tax rate changed to 6.75 percent, you would have to modify every formula that used the old value. If you store the tax rate in a cell, however, you simply change that one cell—and Excel updates all the formulas.

Using the Formula bar as a calculator

If you simply need to perform a calculation, you can use the Formula bar as a calculator. For example, enter the following formula—but don’t press Enter:

=(145*1.05)/12

If you press Enter, Excel enters the formula into the cell. But because this formula always returns the same result, you may prefer to store the formula’s result rather than the formula itself. To do so, press F9—and watch the result appear in the Formula bar. Press Enter to store the result in the active cell. (This technique also works if the formula uses cell references or worksheet functions.)

Making an exact copy of a formula

When you copy a formula, Excel adjusts its cell references when you paste the formula to a different location. Sometimes, you may want to make an exact copy of the formula. One way to do this is to convert the cell references to absolute values, but this isn’t always desirable. A better approach is to select the formula in Edit mode and then copy it to the Clipboard as text. You can do this in several ways. Here’s a step-by-step example of how to make an exact copy of the formula in A1—and copy it to A2:

  1. Double-click A1 (or press F2) to get into Edit mode.

  2. Drag the mouse to select the entire formula. You can drag from left to right or from right to left. To select the entire formula with the keyboard, press Shift+Home.

  3. Choose Home Making an exact copy of a formula Clipboard Making an exact copy of a formula Copy(or press Ctrl+C). This copies the selected text (which will become the copied formula) to the Clipboard.

  4. Press Esc to get out of Edit mode.

  5. Select cell A2.

  6. Home Making an exact copy of a formula Clipboard Making an exact copy of a formula Paste (or press Ctrl+V) to paste the text into cell A2.

You also can use this technique to copy just part of a formula, if you want to use that part in another formula. Just select the part of the formula that you want to copy by dragging the mouse, and then use any of the available techniques to copy the selection to the Clipboard. You can then paste the text to another cell.

Formulas (or parts of formulas) copied in this manner won’t have their cell references adjusted when they are pasted to a new cell. That’s because the formulas are being copied as text, not as actual formulas.

Tip

You can also convert a formula to text by adding an apostrophe () in front of the equal sign. Then, copy the formula as usual and paste it to its new location. Remove the apostrophe from the pasted formula, and it will be identical to the original formula. And don’t forget to remove the apostrophe from the original formula as well.

Converting formulas to values

If you have a range of formulas that will always produce the same result (that is, dead formulas), you may want to convert them to values. If, say, range A1:A20 contains formulas that have calculated results that will never change—or that you don’t want to change. For example, if you use the RANDBETWEEN function to create a set of random numbers and you don’t want Excel to recalculate those random numbers each time you press Enter, you can convert the formulas to values. Just follow these steps:

  1. Select A1:A20.

  2. Choose Home Converting formulas to values Clipboard Converting formulas to values Copy (or press Ctrl+C).

  3. Choose Home Converting formulas to values Clipboard Converting formulas to values Paste Values

  4. Press Esc to cancel Copy mode.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset