I'm kind of gutted that I couldn't figure the majority of this out, it seems like such a simple premise. I've made somewhat of a workaround but it could definitely do with some refinement;
I'm using a VBA function called Eval:
Public Function Eval(varRange As Range)
Dim varArray() As Variant
varArray = varRange
Dim R As Long
Dim C As Long
For R = 1 To UBound(varArray, 1)
For C = 1 To UBound(varArray, 2)
If varArray(R, C) = "Protected" Then
varArray(R, C) = CVErr(xlErrNA)
End If
Next C
Next R
Eval = varArray
End Function
And a defined range called 'Chart' which has the following formula
=EVAL(INDIRECT("Sheet1!$B$2:$B$"&1+COUNTA(Sheet1!$B$2:$B$31)))
This makes the range dynamic, but you could just use =EVAL(B2:B6)
if need be.
On your chart, edit the series values range to Sheet1.xlsm!Chart
(or whatever your sheet is called), and you get the data range with any "Protected" values converted to blanks. The only thing is, the chart will plot the line between the two points regardless, I cannot make the chart plot the gap. Maybe someone with better google-fu than myself could come up with a solution?