title: Iterating through populated rows
body: <p>So I am trying to iterate through a worksheet in an Excel spreadsheet using VBA. I want to iterate through each row, and then through each column, and despite googling, I can't actually find an intuitive way to do this.</p>
  
  <p>I'm assuming that the first cell of a row must be populated, if its not, then that must be the end. I can enforce this </p>
  
  <p>My current approach is to iterate through the rows, then try and get the value of the first cell, but I can't figure it out. I've come across some questions here and elsewhere that use ranges and such, but nothing that helps me write code.</p>
  
  <p>The current approach is:</p>
  
  <pre><code>Set sh = ActiveSheet
  RowCount = 0
  For Each rw In sh.Rows
      'If Row.Cells(1, 1).Value = "" Then Exit For
      RowCount = RowCount + 1
  Next rw
  MsgBox (RowCount)
  </code></pre>
  
  <p>Now when I run this, I get some huge number, which is wrong as the table only has about 25 rows. I commented the first line out as it wasn't working.</p>
  
  <p><strong>What can I change in the first line in the For Loop to correctly break when it finds a row where the first cell is empty?</strong></p>