title: Invalid Procedure Call or Argument on IsError & InStr
body: <p>I'm hoping someone can help with the error I am receiving?</p>
  
  <p>I am trying to look up a value within a cell with a lot of text. I am Trying to find the text <code>"TOTAL DDD AMOUNT"</code> within a cell and then return the value </p>
  
  <p>(Note - <code>Range("P1458")</code> is a sample cell that I know the value exists and should return a value).</p>
  
  <pre><code>Dim ValDDDRng As Range
  Set ValDDDRng = Worksheets("DATA2").Range("P1458")
  Dim ValDDD As Variant
  
  If Not IsError(Mid(ValDDDRng, InStr(1, ValDDDRng, "TOTAL DDD AMOUNT", _ 
       vbTextCompare) + 17, (InStr(1, ValDDDRng, ",", vbTextCompare)) _
       - (InStr(1, ValDDDRng, "TOTAL DDD AMOUNT", vbTextCompare)))) Then
  </code></pre>
  
  <p>Example of the text within the cell that it is looking for these values. Sometimes the start may include additional text so it is not consistent of where in the cell the Amount may be. I am looking to return the value <code>75.33</code> but first clarify that there is no error whilse getting the value. If the <code>IsError</code> returns an error then it is to return a Nothing but Else return the actual value (From the example £75.33) </p>
  
  <blockquote>
    <p>**** TAXES: 58.99 GBR,TOTAL DDD AMOUNT: 75.33 GBR,TOTAL FEES: 16.34 GBR,** BLUE/GREEN**,FILE RECORD PREPARED,*****CLEARED DDD*****</p>
  </blockquote>
  
  <p>When I run the If Not IsError example I am receiving an Invalid Procedure Call or Argument</p>