IN THIS CHAPTER
Formulas are what make a spreadsheet program so useful. If it weren't for formulas, a spreadsheet would simply be a fancy 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, the 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.
A formula consists of special code entered into a cell. It performs a calculation of some type and returns a result that 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 always begins with an equal sign and can contain any of these elements:
+
(for addition) and *
(for multiplication)SUM
and AVERAGE
)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.
Here are a few examples of formulas:
=150*.05 |
Multiplies 150 times 0.05. This formula uses only values, and it always returns the same result. You could just enter the value 7.5 into the cell, but using a formula provides information on how the value was calculated. |
=A3 |
Displays the value in cell A3. No calculation is performed. |
=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, using the SUM function. |
=A1=C12 |
Compares cell A1 with cell C12. If the cells are identical, the formula returns TRUE; otherwise, it returns FALSE. |
Note that every formula begins with an equal sign (=
). The initial equal sign allows Excel to distinguish a formula from plain text.
Excel formulas support a variety of operators. Operators are symbols that indicate what mathematical (or logical) operation you want the formula to perform. Table 10.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 10.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.
Here 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 text 123456. |
=6^3 |
Raises 6 to the third power (216). |
=216^(1/3) |
Raises 216 to the power. This is mathematically equivalent to calculating the cube root of 216, which is 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 contains Bill and A2 contains 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 is less than or equal to the value in cell A2. Otherwise, it returns FALSE. |
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 so your formulas produce accurate results.
Table 10.2 lists the Excel operator precedence. This table shows that exponentiation has the highest precedence (performed first) and logical comparisons have the lowest precedence (performed last).
Table 10.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 Excel's built-in order of precedence. Expressions within parentheses are always evaluated first. For example, 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 good practice 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 cell 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 follows:
=(B2*C2+B3*C3+B4*C4)*B6
But most would agree that 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.
Many 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 complicated calculation by using the mathematical operators alone.
A worksheet function can simplify a formula significantly.
Here's an example. To calculate the average of the values in ten 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
:
=AVERAGE(A1:A10)
The following formula demonstrates how using a function can enable you to perform calculations that are not otherwise possible. Say 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 formula that uses the MAX
function to return 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 the 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. Use of all-uppercase letters is not acceptable; for example, JOHN F. SMITH
must now appear as John F. Smith
. You could spend the next several hours re-entering the list (ugh), or you could use a formula, such as the following, which uses the PROPER
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 choose Home Clipboard Copy to copy the range. Next, with B1:B1000 still selected, choose Home Clipboard Paste Values (V) 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 use 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, which contains the sales amount. 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. This example uses three arguments, separated by commas. I discuss this in the next section, “Function arguments.”
In the preceding examples, you may have noticed that all the functions used parentheses. The information inside the parentheses is the list of arguments.
Functions vary in the way they use arguments. Depending on what it has to do, a function may use
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, 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. Here are some examples of functions that use various types of arguments:
=SUM(A1:A24)
=SQRT(121)
=PROPER("john f. smith")
=SQRT(183+12)
=SQRT(SUM(A1:A24))
All told, Excel includes more than 450 built-in functions. And if that's not enough, you can download or 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, the Excel 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.
Every 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 method in detail.
Excel 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 then type the letters SU, you'll see the drop-down list shown in Figure 10.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 navigation 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 next sidebar, “Using Formula AutoComplete,” for an example of how this feature works.
Entering a formula manually involves, well, entering a formula manually. In a selected cell, you 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.
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:
=
) to begin the formula. Notice that Excel displays Enter
in the status bar (lower left of your screen).Point
in the status bar.+
). A solid color border replaces the dashed border of A1, and Enter reappears in the status bar.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:
Figure 10.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 B9.
The easiest way to enter a function into a formula is to use Formula AutoComplete (the drop-down list that Excel displays while you type a formula). 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 tools in the Function Library group on the Formulas tab on the Ribbon (see Figure 10.4). This method is especially useful if you can't remember which function you need. When entering a formula, click the function category (Financial, Logical, Text, and so on) to get a list of the functions 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.
Yet another way to insert a function into a formula is to use the Insert Function dialog box (see Figure 10.5). You can access this dialog box in several ways:
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 recently used, 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 field at the top of the dialog box.
Here are some additional tips to keep in mind when you use the Insert Function dialog box to enter functions:
AVERAGE
function), Excel adds a new box every time you enter an optional argument.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.After you enter a formula, you can (of course) edit it. 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 need to edit the formula to correct the error.
Notice that Excel color-codes the range addresses and ranges when you're entering or editing a formula. This helps you quickly spot the cells that are used in a formula.
Here are some of the ways to get into cell edit mode:
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 navigation keys.
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. 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 to change the values used in the formulas.
When you use a cell (or range) reference in a formula, you can use three types of references:
The type of cell reference is important only if you plan to copy the formula to other cells. The following examples illustrate this point.
Figure 10.7 shows a simple worksheet. The formula in cell D2, which multiplies the quantity by the price, is
=B2*C2
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 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 10.8). In this situation, the formula in cell D2 is
=(B2*C2)*$B$7
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 because the address of the cell that contains the sales tax never changes.
Figure 10.9 demonstrates the use of mixed references. The formulas in the C3:F7 range calculate the area for various lengths and widths. Here's the formula in cell C3:
=$B3*C$2
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.
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.
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.
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
.
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 and square brackets) in single quotation marks. For example, here's a formula that refers to a cell on Sheet1
in a workbook named Budget For 2016
:
=A1*'[Budget For 2016.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 2016.xlsx]Sheet1'!A1
A linked file can also reside on another system that's accessible on your corporate network. The following formula refers to a cell in a workbook in the files
directory of a computer named DataServer
:
='\DataServerfiles[budget.xlsx]Sheet1'!$D$7
A table is a specially designated range of cells, set up with column headers. In this section, I describe how formulas work with tables.
Figure 10.10 shows a simple table with three columns. I entered the data and then converted the range to a table by choosing Insert Tables Table. Note that I didn't define any names, but the table is named Table1
by default.
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:
AVERAGE
from the drop-down list in cell D15. Excel creates this formula:=SUBTOTAL(101,[Actual])
For the SUBTOTAL
function, 101
is an enumerated argument that represents AVERAGE
. The second argument for the SUBTOTAL
function is the column name, in square brackets. Using the column name within brackets creates “structured” references within a table. (I discuss this further in the upcoming section “Referencing data in a table.”)
In many cases, you'll want to use formulas within a table to perform calculations that use other columns in the table. For example, in the table shown in Figure 10.11, you may want a column that shows the difference between the Actual and Projected amounts. To add this formula, follow these steps:
[@Actual]
, which is the column heading, in the Formula bar.[@Projected]
in your formula.Figure 10.12 shows the table with the new column.
Examine the table, and you 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.
These steps use the pointing technique to create the formula. Alternatively, you could have entered the formula manually using standard cell references rather than column headers. 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 instead of cell references: they're much easier to understand.
Excel offers some other ways to refer to data that's contained in a table by using the table name and column headers.
You can, of course, use standard cell references to refer to data in a table, but using the table name and column headers has a distinct advantage: the names adjust automatically if the table size changes by adding or deleting rows. In addition, formulas that use table names and column headers will adjust automatically if you change the name of the table or give a new name to a column.
Refer to the table shown in Figure 10.11. This table is named Table1
. To calculate the sum of all the data in the table, enter this formula into a cell outside the table:
=SUM(Table1)
This formula will return the sum of all the data (excluding calculated total row values, if any), 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 AnnualData
(by using the Name Manager or by choosing Table Tools Design Properties Table Name), the preceding formula would change to
=SUM(AnnualData)
Most of the time, a formula will 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 10.13 shows the formula AutoComplete helping to create a formula by showing a list of the elements in the table. Notice that, in addition to the column headers in the table, Excel lists other table elements that you can reference: #All
, #Data
, #Headers
, #Totals
, and @ - This Row
.
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.
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 10.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 10.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.) |
When you're entering formulas, you may occasionally see a warning message like the one shown in Figure 10.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 cell — 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.
When you get the circular reference message after entering a formula, Excel gives you two options:
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.
Often, a circular reference is quite obvious and 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 to the original formula), it may require a bit of detective work to get to the problem.
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:
Sometimes, however, you may want to control when Excel calculates formulas. For example, if you create a worksheet with thousands of complex formulas, you may 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 Calculation Calculation Options Manual (see Figure 10.15).
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:
Using range names can make your formulas easier to understand and modify and even help prevent errors. Dealing with a meaningful name such as AnnualSales
is much easier than dealing with a range reference, such as AB12:AB68.
Excel offers a number of advanced techniques that make using names even more useful. I discuss these techniques in the sections that follow. This information is for those who are interested in exploring some of the aspects of Excel that most users don't even know about.
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:
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 can also use this constant in a formula, such as =A1*SalesTax
.
In addition to creating named constants, you can create named formulas. Like a named constant, a named formula doesn't reside in a cell.
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 10.16 shows an example. In this case, the name MonthlyRate
refers to the following formula:
=Sheet3!$B$1/12
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 field 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 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, cell D12 displays the contents of cell C12 raised to the third power. (C12 is the cell directly to the left of cell D12.)
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 10.17 shows a simple example.
The formula in cell B9 is
=C1:C6 A3:E3
This formula returns 107
, the value in cell C3 — that is, the value at the intersection of the two ranges.
The intersection operator is one of three reference operators used with ranges. Table 10.4 lists these operators.
Table 10.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 10.18, which shows a table of values. I selected the entire table and then chose Formulas Defined Names Create from Selection to create names automatically by using the top row and the left column.
Excel created the following eight names:
North |
=Sheet1!$B$2:$E$2 |
Quarter1 |
=Sheet1!$B$2:$B$5 |
South |
=Sheet1!$B$3:$E$3 |
Quarter2 |
=Sheet1!$C$2:$C$5 |
West |
=Sheet1!$B$4:$E$4 |
Quarter3 |
=Sheet1!$D$2:$D$5 |
East |
=Sheet1!$B$5:$E$5 |
Quarter4 |
=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(Quarter4)
To refer to a single cell, use the intersection operator. Move to any blank cell and enter the following formula:
=Quarter1 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 Quarter1
range intersects with the West
range. Naming ranges in this manner can help you create very readable formulas.
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 later 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 Defined Names Define Name Apply Names. The Apply Names dialog box (shown in Figure 10.19) appears. 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.
In this section, I offer a few additional tips and pointers relevant to formulas.
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%), 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%, 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.
If you need to perform a quick 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.)
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:
You can also 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're pasted into a new cell. That's because the formulas are being copied as text, not as actual formulas.
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. Say that 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: