title: Output all columns with a header row greater than 0 onto another sheet
body: <p>I have a range in Sheet 1 from J11 to BYW3000. Row 11 for each column either contains 0 or a number greater than 0. I want to output the entire column for each column that has a number greater than 0 in that column's Row 11 onto sheet 2, all of which need to be next to each other on sheet 2. I don't have any code as I am new to VBA and don't know the syntax save for sub(). Would someone be able to help with that?</p>
  
  <p>In short, paste all the columns from sheet 1 that have a value greater than 0 in the heading row onto sheet 2. Any help would be greatly appreciated.</p>
  
  <p>I have edited your code below but it seems to bug out at the for each statement with the error Object does not support property. Could it be with my "a" declaration?</p>
  
  <p>I just needed to put  &lt;>"" instead of 0 and declare what COL was. Thank you very much for your help, Yasser. I would like to know how the code actually functions if you have the time for a brief explanation. Than</p>
  
  <pre><code>Dim c As Range, COL As Long, a As Worksheet, b As Worksheet
  
  
  Set a = ThisWorkbook.Worksheets("SOLVER")
  Set b = ThisWorkbook.Worksheets("FEB Test")
  
  COL = 9
  
  Application.ScreenUpdating = False
  
      For Each c In a.Range("J11").CurrentRegion.Rows(1).Cells
          If c.Value &lt;&gt; "" Then
              COL = COL + 1
              With a
                  .Range(.Cells(11, c.Column), .Cells(.Cells(Rows.Count, c.Column).End(xlUp).Row, c.Column)).Copy b.Cells(11, COL)
              End With
          End If
      Next c
  Application.ScreenUpdating = True
  End Sub
  </code></pre>
  
  <p>Thanks again!</p>