View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Patrick Molloy[_2_] Patrick Molloy[_2_] is offline
external usenet poster
 
Posts: 1,298
Default Improvement to code

assuming your table always has data in row 5

how's this?

With Columns(Range("IV5").End(xlToLeft).Column)
Columns(.Column + 1).Formula = .Formula
.Value = .Value
End With

"Brad" wrote:

The below works, but can it be more efficient?

What I'm doing is on a daily basis copy the equations over a column, range
"value", "Yesterday" results (so those results don't change) and then bring
in the new daily data.

if nothing else I think that I should remove the 5 and 33 with range names...

Sub DAILY()
Dim LastCol As Long
With Sheets("WeeksDetail")
LastCol = .Cells(5, Columns.Count).End(xlToLeft).Column
.Cells(5, LastCol).Resize(33, 1).Copy .Cells(5, LastCol + 1)
.Cells(5, LastCol).Resize(33, 1).Value = .Cells(5,
LastCol).Resize(33, 1).Value
End With
ActiveWorkbook.RefreshAll
End Sub