This code will fill the selected region with the formula "=sum($A2,B$3)" while maintaining correct relative references. Then it will copy and paste special the resulting values.
This assumes that you have selected the range from the top left to bottom right leaving your ActiveCell (the one that is not shaded) at the top left.
Sub FillRange()
Dim fR As Integer, selRows As Integer, lR As Integer
Dim fC As Integer, selCol As Integer, lC As Integer
fR = ActiveCell.Row 'finds the first row of the selected area
selRows = Selection.Rows.Count 'finds the number of rows in the selected area
lR = fR + selRows - 1 'finds the last row of the selected area
fC = ActiveCell.Column 'finds the first column of the selected area
selCol = Selection.Columns.Count 'finds the number of columns in the selected area
lC = fC + selCol - 1 'finds the last column of the selected area
ActiveCell = "=sum($A2,B$3)"
ActiveCell.AutoFill Destination:=Range(Cells(fR, fC), Cells(fR, lC)), Type:=xlFillDefault
Range(Cells(fR, fC), Cells(fR, lC)).AutoFill Destination:=Selection, Type:=xlFillDefault
Selection.Copy
Selection.pastespecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
HTH
Bookmarks