In school days, we used to solve mathematical equations.…where we have the result of the equation…
..but don’t have the input value.
So, if you think about to solve the same kind of problems in Excel, you have a specific tool which can help you.
Goal Seek in Excel
The basic idea is to find the exact input value and a formula can help you to to get that value.
In simple words, if you know what actual result value you want, you can use goal seek to find the best input value for getting it.
For example:
For say, you need to borrow some money from someone.
You know how much money you need, how long you want to take to pay off the loan, and how much you can pay each month.
You can use goal seek to calculate the interest rate you will need to secure with your friend.
You can solve many complex problems with the help of goal seek function.
So today, in this post, you’ll learn how to use goal seek in Excel, how it works and what are the important points you need to take care.
Let’s get started.
How to Open Goal Seek in Excel Sheet?
To open goal seek use one of these two methods.
- Go to Data Tab → What If Analysis → Goal Seek.
- Use the shortcut key Alt + T + G.
You can use these methods to activate goal seek in Microsoft Excel 2007 to 2016 versions.
How to use Goal Seek Function in Excel?
When you open goal seek, you’ll get a small pop-up to input data. Basically, it has three required components.
- Set Cell: Cell in which you want the desired result. Make sure, the cell you are referring here has a formula in it.
- To Value: Value you want as a result.
- By Changing Cell: Cell in which you want alteration to come up with the result equals to the “To Value”. Make sure, the cell you are referring here is used in the formula in the cell which is referred in “Set Cell”.
How to Solve a Problem in Excel with Goal Seek Function?
Imagine you’re working in a company who is trying to get a tender order through quoting the lowest price.
For this, you need to prepare a price structure in which your landing price (to the customer) should be $1000.
Whereas your present final price is $1089.9.
If you want to do it manually you have two options.
- Perform a back calculation where you have to deduct all the taxes and charges from the landing price ($1000) to come to the base price.
- Or, you have to tweak in your base price to get to the desired final price.
It’s not as easy as it sounds but goal seek can be a game changer here.
- When you open goal seek you will get a window like this.
- Now, you need to input following values.
- Click on the “Set Value” and refer it to the cell having landing price.
- Click on the “To Value” and enter the value you want as a result, in the cell having landing price.
In the end, click on the “By Changing Cell” and refer it to the cell having base price.
- Click OK.
- Goal seek will do something like this with your spreadsheet.
How does it work?
Now, if you check base price cell, it values is changed to $925 and with this, your landing price is changed to $1000.
Your base has changed by goal seek using a hit and trial method. But, goal seek is pretty quick in this and you can’t see the entire process.
Important Points before you work on Goal Seek
These are few points need to be kept in mind while using goal seek.
- A cell which is used as set cell must contain a formula which is dependent on cell “By Changing Cell”.
- Goal Seek use iteration method to reach the target value which you mention in “To Value”. You can adjust its iteration from File-> Options -> Formulas (it can increase its accuracy level).
- Sometimes Excel will not able to give you the desired result and pop up a message that “may not have found a solution”. In that situation, you can enter a value closer to your result and try again ($999.95 instead of $1000). Also, make sure to check above two pointers.
- Goal seek is only able to work with single cell input value at one time.
Use Goal Seek with VBA Code
You can enjoy your coffee while working with Excel’s goal seek command. Hope you don’t mind if you can add some extra chocolate in it using VBA.
Yes, you are right, you can use goal seek with VBA.
expression .GoalSeek(Goal, ChangingCell)
- Expression: It must be a cell in which you want the desired result.
- Goal: Desired result which we want to return as a result.
- Changing Cell: Cell in which changes require for achieving result value.
Here is a macro code which you can use.
Sub GoalSeekVBA()
Dim Target As Long
On Error GoTo Errorhandler
Target = InputBox("Enter the required value", "Enter Value")
Worksheets("Goal_Seek").Activate
With ActiveSheet.Range("C7")
.GoalSeek _Goal:=Target, _
ChangingCell:=Range("C2")
End With
Exit Sub
Errorhandler:
MsgBox ("Sorry, value is not valid.")
End Sub