title: Delete Cells in excel and move contents up based on value
body: <p>I've got some code working to condense multiple columns in excel, removing any blank cells and shunting the data upwards.</p>
  
  <p>Every cell contains formulae, I did find a code snippet that let me use a specialcells command, but that only removed truly blank cells and not ones that contained a formula, where the outcome would make the cell blank.</p>
  
  <p>This is what I'm currently using, which was an edit of something I found on this site a while ago:</p>
  
  <pre><code>Sub condensey()
  Dim c As Range
  Dim SrchRng
  
  Set SrchRng = ActiveSheet.Range("B2", ActiveSheet.Range("B208").End(xlUp))
  Do
      Set c = SrchRng.Find("", LookIn:=xlValues)
      If Not c Is Nothing Then c.Delete
  Loop While Not c Is Nothing
  End Sub
  </code></pre>
  
  <p>I tried increasing the range on the active sheet to include a second column, but excel just goes nuts, assuming it's trying to do it for every cell in the entire table.</p>
  
  <p>I've then repeated this piece of code for each column that I want to condense.</p>
  
  <p>Now this is great, it does exactly what I want to do, but it is slow as anything, especially when each column can contain up to 200+ rows. Any ideas on how to improve the performance of this, or maybe re-write it using a different method?</p>