title: Extracting data from a sheet in excel using VBA Macro
body: <p>Here is the Macro I've just written out, unfortunately it doesn't seem to do anything and I can't find the error! I am trying to copy the column with the header "Offset Acct" from sheet 1 (SAPDump) to sheet 2 (Extract) which is blank. Can anyone see explain to me why this isn't working? Fairly new to VBA so it's probably an easy fix. Cheers</p>
  
  <pre><code>Sub ExtractData()
  
  ' Define sheets
  
  Dim SAPDump As Worksheet
  Dim Extract As Worksheet
  
  ' Set sheets
  
  Set SAPDump = ActiveSheet
  Set Extract = ThisWorkbook.Sheets("Extract")
  
  ' Define row and column counters
  
  Dim r As Long
  Dim c As Long
  
  ' Set last non-empty column
  
  Dim lastCol As Long
  lastCol = SAPDump.Cells(1, Columns.Count).End(xlToLeft).Column
  
  ' Set last non-empty row
  
  Dim lastRow As Long
  lastRow = SAPDump.Cells(Rows.Count, "A").End(xlUp).row
  
  ' Look a all columns
  For c = 1 To c = lastCol
      ' Examine top column
      If SAPDump.Cells(1, c).Value = "Offset Acct" Then
          ' Loop round all rows
          For r = 1 To r = lastRow
              ' Copy column into A on Extract
              Extract.Cells(r, 1) = SAPDump.Cells(r, c)
          Next r
      Else
  
      End If
  
  Next c
  
  End Sub
  </code></pre>