**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: Returning Zero When a Referenced Cell is Blank.

If you have a formula in a worksheet, and the cell referenced by the formula is blank, then the formula still returns a zero value. For instance, if you have the formula =A3, then the formula returns the contents of cell A3, unless cell A3 is blank. In that case, the formula returns a value of zero.

This seems to be related to the idea that it is impossible for a formula to return a blank value, when "blank" is used synonymously with "empty." You can, however, expand your formula a bit so that it returns an empty string. Instead of using =A3 as your formula, you would use the following:

=IF(ISBLANK(A3),"",A3)

This formula uses ISBLANK, which returns either True or False, depending on whether the referenced cell (A3) is blank or not. The IF function then returns an empty string ("") if A3 is blank, or it uses the value in A3 if A3 is not blank.

Regardless of what the formula returns, you can still use its result in other formulas, and it will work fine. Even if it returns an empty string, it is still treated by other formulas as if it contained zero. In areas where treating the cell as if it contained zero might be problematic (such as when you are charting the results of the formula), then you can modify the formula a bit, as shown here:

=IF(ISBLANK(A3),NA(),A3)

This formula returns the #N/A error if A3 is blank. This error propagates through other formulas that reference the formula, but the #N/A error is ignored completely when charting.

While the above solutions are satisfactory for most people, some people would really like to see a target cell be truly blank if the source cell is blank. For instance, you might want cell B7 to be blank if cell A3 is blank. If you put a formula in cell B7 (as already discussed), then cell B7 is not truly blank—it contains a formula.

If this is your goal—true "blankness"—then you can only achieve it through the use of a macro. The macro will need to check to see if the source cell was changed. If it was, then whatever is in the source needs to be copied to the target cell.

Private Sub Worksheet_Change(ByVal Target As Excel.Range) Dim rMonitor As Range Dim rTarget As Range Set rMonitor = Range("A3") Set rTarget = Range("B7") If Not Intersect(Target, rMonitor) Is Nothing Then rMonitor.Copy rTarget End If Set rMonitor = Nothing Set rTarget = Nothing End Sub

*Note:*

If you would like to know how to use the macros described on this page (or on any other page on the *ExcelTips* sites), I've prepared a special page that includes helpful information. Click here to open that special page in a new browser tab.

*ExcelTips* is your source for cost-effective Microsoft Excel training.
This tip (2174) 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: **Returning Zero When a Referenced Cell is Blank**.

**Program Successfully in Excel!** John Walkenbach's name is synonymous with excellence in deciphering complex technical topics. With this comprehensive guide, "Mr. Spreadsheet" shows how to maximize your Excel experience using professional spreadsheet application development tips from his own personal bookshelf. Check out *Excel 2013 Power Programming with VBA* today!

Your chosen occupation may require that you work with linear distances in feet and inches. Excel can do this, to a ...

Discover MoreRemember your number line from your early years in school? Some numbers can be below zero (negative numbers) and others ...

Discover MoreUncovering the lowest value in a range is relatively easy; you can just use the MIN worksheet function. Discovering the ...

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

2022-07-21 11:02:23

David

2020-08-15 14:22:11

Phil

2020-07-15 04:19:53

Peter

Function SumDouble(rStart As Range, rEnd As Range) As String

Dim rr As Range, ss As Worksheet

Dim bSum As Boolean, nSum As Double

Dim sStart As String, sEnd As String

sStart = rStart.Parent.Name

sEnd = rEnd.Parent.Name

For Each ss In Sheets

bSum = (ss.Name = sStart) Or bSum

If bSum Then

Set rr = ss.Range(rStart.Address)

If VarType(rr.Value) = vbDouble Then nSum = nSum + Val(rr.Value)

If (ss.Name = sEnd) Then Exit For

End If

Next

SumDouble = nSum

End Function

2020-07-14 11:11:19

Stuart Morris

I am working on a scorecard which has an overview tab and then several other tabs which are the data points for the overview tab (main scorecard) the overview tab pulls data from each tab by month and these formulas are entered for example like this ='tab2'!A1+'tab3'!A1+'tab4'!A1 etc etc

My issue is the cell in the overview page returns a zero until data is entered into the relevant tabs. I do not want the overview page to return a zero as I want to set conditional formatting for the cell to be green if the true value is actually zero.

I have have tried several different formulas such as ifblank or ifvlookup but nothing will return the cell blank but then allow a zero to show should the value in the other tabs be zero.

Any help would be greatly appreciated.... and my head hurts :-)

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.

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

Copyright © 2022 Sharon Parq Associates, Inc.

## Comments