Hello

I am very new to VBA and I found an example of how to make Goal Seek automatic and copied and pasted and tweaked until I got what I wanted but now I want to add something and it won't work. Basically I have 3 sheets in I am using in my VBA. Sheet1 is copied below.

Option Explicit

Private Sub Worksheet_Calculate()
CheckGoalSeekKW1
Call CheckGoalSeekKW2
Call CheckGoalSeekSS
Call CheckGoalSeekSS2
Call CheckGoalSeekTK
End Sub

Private Sub CheckGoalSeekKW1()
Static isWorking As Boolean

With Sheet1
If Round(.Range("ByChangingCell").Value, 6) <> 0 And Not isWorking Then
isWorking = True
.Range("GoalSeekCell").Value = 0
.Range("ByChangingCell").GoalSeek Goal:=0, ChangingCell:=.Range("GoalSeekCell")
isWorking = False
End If
End With
End Sub

Sub CheckGoalSeekKW2()
Static isWorking As Boolean
With Sheet1
If Round(.Range("ByChangingCell1").Value, 11) <> 0 And Not isWorking Then
isWorking = True
.Range("GoalSeekCell1").Value = 0
.Range("ByChangingCell1").GoalSeek Goal:=0, ChangingCell:=.Range("GoalSeekCell1")
isWorking = False
End If
End With
End Sub
Sub CheckGoalSeekSS()

End Sub

Sub CheckGoalSeekSS2()

End Sub

Sub CheckGoalSeekTK()

End Sub

The problem is with the CheckGoalSeekSS2(). I added it to Sheet3 because that's the sheet it will be executed on but once I did I started to get this error "Run-time error '5': Invalid procedure call or argument". I pasted Sheet3 below and I changed the text to blue on the part that I added that has caused the error. I have also checked rechecked to make sure my cells are named correctly and are used correctly in the equations.

Option Explicit
Private Sub Worksheet_Calculate()
CheckGoalSeekSS
Call CheckGoalSeekSS2

End Sub



Private Sub CheckGoalSeekSS()
Static isWorking As Boolean

With Sheet3
If Round(.Range("ByChangingCellSS").Value, 6) <> 0 And Not isWorking Then
isWorking = True
.Range("GoalSeekCellss").Value = 20
.Range("ByChangingCellSS").GoalSeek Goal:=0, ChangingCell:=.Range("GoalSeekCellss")
isWorking = False
End If
End With
End Sub
Sub CheckGoalSeekSS2()
Static isWorking As Boolean
With Sheet3
If Round(.Range("ByChangingCellSS2").Value, 36) <> 0 And Not isWorking Then
isWorking = True
.Range("GoalSeekCellSS2").Value = 0
.Range("ByChangingCellSS2").GoalSeek Goal:=0, ChangingCell:=.Range("GoalSeekCellSS2")
isWorking = False
End If
End With
End Sub



Thank you in advance for your help

Brodie