Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Only Showing the Maximum of Multiple Iterations.

Only Showing the Maximum of Multiple Iterations

by Allen Wyatt
(last updated November 5, 2011)

Mike has three cells (A1:A3) that show results of calculations. He needs a way to determine the maximum value that has ever appeared in any of these cells, and have that value stored in cell E5. He knows how to get the maximum out of the three, but when he recalculates the worksheet, if the values in A1:A3 are less than the maximum value in E5 (based on previous determinations of the maximum in A1:A3), then E5 should not change. In other words, E5 should only change if whatever is in A1:A3 is greater than what is in E5. Mike isn't sure how to perform such a calculation.

There are two ways you can solve this issue. The first is to create a simple formula that would be placed in cell E5:

=MAX(A1:A3,E5)

The MAX function examines the various values it references and then returns the maximum out of them—exactly what is wanted. However, since this formula is being placed in cell E5 and it also references E5, it will return an error. This is because the formula creates a circular reference. Excel can handle those, but you need to make a small configuration change to do it:

  1. Choose Options from the Tools menu. Excel displays the Options dialog box.
  2. Display the Calculation tab. (See Figure 1.)
  3. Figure 1. The Calculation tab of the Options dialog box.

  4. Make sure the Iteration check box is selected.
  5. Click OK.

Now Excel will handle circular references, such as the simple formula you've put in cell E5.

The second approach is to use a macro to perform the calculation. This approach may be preferred because you may not want (for some reason) to enable circular references in your workbook. The following is actually an event handler, added to the code for the worksheet. (Easiest method: Right-click on the sheet tab, display the code window from the resulting Context menu, and add the macro to that code window.)

Private Sub Worksheet_Calculate()
    Dim dMax As Double
    dMax = Application.WorksheetFunction.Max(Range("A1:A3"))
    If dMax > Range("E5") Then
        Application.EnableEvents = False
        Range("E5") = dMax
        Application.EnableEvents = True
    End If
End Sub

The macro is triggered every time the worksheet is recalculated. It grabs the maximum of A1:A3 and compares it to what is in E5. Only if it is larger is that value then placed into E5.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (10915) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Only Showing the Maximum of Multiple Iterations.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He  is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Adding Tags to Text

The Find and Replace capabilities of Word can be used to add HTML tags to your document text. This is easier to do than it ...

Discover More

Resizing an Image in a Document

When you first insert an image in a document, Docs tries to guess the best size for that image. Chances are good that you'll ...

Discover More

Adding Quotes

Adding quote marks is normally as simple as typing them from the keyboard. However, if you want to add quote marks around ...

Discover More

Excel Smarts for Beginners! Featuring the friendly and trusted For Dummies style, this popular guide shows beginners how to get up and running with Excel while also helping more experienced users get comfortable with the newest features. Check out Excel 2013 For Dummies today!

MORE EXCELTIPS (MENU)

Determining a Simple Moving Average

A moving average can be a great way to analyze a series of data points that you've collected over time. Setting up a formula ...

Discover More

Compiling a List of Students in a Course

Need to pull just a limited amount of information from a large list? Here are a few approaches you might be able to use with ...

Discover More

Simulating Alt+Enter in a Formula

You can use the Alt+Enter keyboard shortcut while entering information in order to force your data onto multiple lines in a ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments for this tip:

There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)

This Site

Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.

Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.

Links and Sharing
Share