You can use the := operator along with the name of the variable. This way you only need to send the optional values that are specific to that call. Using your above example you could use:
Call Example(Value1, ValueAdd := "Sprd=0")
And this way you don't have to enter anything about showheaders etc.
Edit:
I've modified your example to handle the missing arguments so that they can be used for maths, hope this helps.
Function Example(Value1, Optional ValueA, Optional ValueB)
If IsMissing(ValueB) Then ValueB = 0
If IsMissing(ValueA) Then ValueA = 0
Example = (Value1 + ValueA) * ValueB)
MsgBox (Example)
End Function
Sub TestExample()
Call Example(2, ValueB:=1)
Call Example(2, ValueB:=1, ValueA:=6)
End Sub