Please Help
Appended is my interpretation of your code in a condenced form. However, it
doesn't do anything more than what you already have. I don't understand what
you are trying to do. If you let us know how this fails to do what you want
then it will illustrate your situation.
Sub copycells()
Dim header As Range, r As Range
Dim c As Range, c1 As Range, c2 As Range
With Sheets("Sheet1")
'use c to define header range
Set c = .Cells(1, Columns.Count).End(xlToLeft)
Set header = .Range(.Range("C1"), c)
For Each c1 In header.Cells
Set c2 = Sheets("Sheet2").Range(c1.Address)
If c1.Value = c2.Value Then
'use c to define column containing data
Set c = .Cells(Rows.Count, c1.Column).End(xlUp)
Set r = .Range(c1(2), c)
r.Copy c2(2)
Else
c2.Value = c1.Value
c2(2).Resize(24, 1).Value = 0
End If
Next
End With
End Sub
Regards,
Greg
|