Link to home
Start Free TrialLog in
Avatar of Tocogroup
TocogroupFlag for United Kingdom of Great Britain and Northern Ireland

asked on

How do I test an Excel cell for a formula ?

Hi,
How do I test a cell in Excel if it contains a formula, rather than a number that has been entered manually ?
Can I check for the = sign in a cell ?
Thanks
Toco
Avatar of Anil Golamari
Anil Golamari
Flag of United States of America image

Function EstFormule(rng As Range) As Boolean

EstFormule = 0
If rng.HasFormula = True Then
    EstFormule = 1
Else
End If

End Function

http://www.mrexcel.com/forum/showthread.php?t=19151
Avatar of Tocogroup

ASKER

Thanks for that. Is there a way of doing that without VBA ?
The quick and easy answer is 'yes'.

Select the desired cell in your worksheet.  Now look in the bar at the top of the Excel window that you use to enter or edit values (or formulas in cells or charts).  This bar is called the 'Formula Bar' and it displays the constant value or formula stored in the active cell.

Formulas are equations that perform calculations on values in your worksheet. A formula starts with an equal sign (=).

For example, the following formula multiplies 2 by 3 and then adds 5 to the result:
=5+2*3
Sorry, I didn't explain myself very well.

I'm setting an exercise for someone to test if they can enter formulas correctly in cells. I want to test the cell to see that they've entered the correct formula and not cheated by entering the numeric value.
For example, I want them to enter
=SUM(A3:A7)
rather than them just entering the numeric result, such as 5

If they enter the correct formula then the cell next to it displays, "CORRECT!". If it's wrong, it displays, "TRY AGAIN !"
You can use the Excel 3 macro expression GET.CELL(48,A1) in a defined formula to tell you whether cell A1 contains a formula. It returns TRUE for cells containing formulas and FALSE otherwise.

1) Select cell B1
2) Open the Name Manager
3) Create a new name HasFormula
4) The Refers to field contains =GET.CELL(48,A1)

Use with a formula like:
=HasFormula                 'always applies to the cell to the left of cell containing the formula

If you want to use conditional formatting to highlight cells with formulas, then change the cell reference in GET.CELL to be the active cell.

You can also use F5 and Special Cells to select all cells that contain formulas.
GET.CELL.jpg
ASKER CERTIFIED SOLUTION
Avatar of byundt
byundt
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
=GET.CELL(6,A1)      'returns the formula in cell A1 in case you want to test whether they came up with the right formula

It is important to realize that you cannot use GET.CELL directly in a worksheet formula. It may only be used with the defined formula trick described in my previous comment.

Brad
Excellent. Thanks very much. That's useful.

Though, I did like the simple answer of checking the formula bar !! Maybe that's the way to stop any cheating.

Thanks again
Toco