Help please, this is driving me crazy!

I have several instances the rows of my worksheet are grouped by shading or borders, I want to add a column that has a new formula, but I don't want to destroy the formatting.

When I do this manually, I enter the formula in the first cell, right-click on the bottom right corner of that cell, drag, then select "Fill without formatting", and this works perfectly.

So I record this as a macro so I can genericize it:
1. Relative ranging:
Sub Fill_Down_Without_Formatting2()
'
' Fill_Down_Without_Formatting2 Macro
'

'
    ActiveCell.Offset(-1403, 1).Range("A1:A6").Select
    Selection.AutoFill Destination:=ActiveCell.Range("A1:A20"), Type:= _
        xlFillValues
    ActiveCell.Range("A1:A20").Select
End Sub
2. Absolute Ranging:
Sub Fill_Down_Without_Formatting_3()
'
' Fill_Down_Without_Formatting_3 Macro
'

'
    Range("E6").Select
    Selection.AutoFill Destination:=Range("E6:E17"), Type:=xlFillValues
    Range("E6:E17").Select
End Sub

What I want to do is type my formula into the first cell, go to the previous column and hit CTRL-DOWN_ARROW to get to the end of the sheet, go to the next column (my target column), SHIFT-CTRL-UP_ARROW to select the range I want my new formula in, then run my macro to fill the formula to the selection.

You say "why don't I just use the drag method?"... well, when your sheet is thousands of rows long, this is tedious and inaccurate. I should be able to do this on the selection object.

What am I missing here? You can see from all the commented lines that I've every method I can think of, but I always get an error. The last attempt produced "Run-time error '1004': AutoFill method of Range class failed."

Sub Fill_Down_Without_Formatting()
'
' Fill_Down_Without_Formatting Macro
'
' Keyboard Shortcut: Ctrl+d
'
    
    FirstRow = Selection.Row
    LastRow = Selection.Row + Selection.Rows.Count - 1
    FirstColumn = Selection.Column
    LastColumn = Selection.Column + Selection.Columns.Count - 1
    NrRows = Selection.Rows.Count
    NrColumns = Selection.Columns.Count
    'Selection.AutoFill Destination:=ActiveCell.Range(Selection, Cells(Selection.Rows.Count, Selection.Columns.Count)), Type:=xlFillValues
    'Selection.AutoFill Destination:=Selection, Type:=xlFillValues
    'Selection.AutoFill Destination:=Cells(LastRow, LastColumn), Type:=xlFillValues
    'Selection.AutoFill Destination:=Selection.Range(Cells(NrRows, NrColumns)), Type:=xlFillValues
    'Cells(LastRow, LastColumn).Activate
    'Selection.AutoFill Destination:=Cells(LastRow, LastColumn), Type:=xlFillValues
    'Selection.AutoFill Destination:=ActiveCell, Type:=xlFillValues
    'Selection.AutoFill Destination:=ActiveCell.Range(Cells(LastRow, LastColumn)), Type:=xlFillValues
    Selection.AutoFill Destination:=Range(Cells(FirstRow, FirstColumn), Cells(LastRow, LastColumn)), Type:=xlFillValues
    
    
End Sub
Thanks for your help, I know I'm missing something basic. I've looked up every reference I can find on AutoFill and Ranges but to no avail.