Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 348
  • Last Modified:

Copy Formula to last row

I continually have problems with copying a formula down to last empty row.  This is what I have but it does not copy down. I would appreciates someone helping me.  Would look at C7 and count used rows.


 Sheets("Block").Select
   
   Range("K7").FormulaR1C1 = "= ""#RET"""
    Range("K7").Select
    Selection.Copy
    Range("K7").Select
    Selection.End(xlDown).Select
0
leezac
Asked:
leezac
  • 4
  • 3
  • 2
1 Solution
 
NorieData ProcessorCommented:
If you want to copy the formula down from row 7 in column K down based on the populated rows in column C try this.
With Sheets("Block")
    .Range("K7", Range("C" & Rows.Count).End(xlUp).Offset(, 8)).FormulaR1C1 = "= ""#RET"""
End With

Open in new window

0
 
Harry LeeCommented:
Well, I have no idea what does imnorie's code do.

but

This would work.

Sub pasteformula()
Dim RwCnt As Long
RwCnt = Cells(Rows.Count, 3).End(xlUp).Row
If RwCnt < 7 Then
    MsgBox ("No Data Found!")
    Exit Sub
End If
With Sheets("Block")
    .Range("K7:K" & RwCnt).FormulaR1C1 = "= ""#RET"""
End With
End Sub

Open in new window

0
 
NorieData ProcessorCommented:
Harry

Do you know what the code I posted will do?
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
Harry LeeCommented:
imnorie,

Looks like pretty much doing the same thing.

The way you do it is instead of using 1 part range like A1:A5, you are using 2 parts range Range(Cell1, cell2).
While Cell1 = K7, and Cell2 is C& row count, but offset to column K.
So basically the range is K7 to K whatever row count of column c.
Well, and the rest, the formula part is simple, isn't it?
0
 
NorieData ProcessorCommented:
Harry

They are similar but the code I posted uses the sheet 'Block' to find the last row of data in column C.

Your code will use the active sheet for the last row.

If the sheet 'Block' is active that's fine but if it isn't there could be some unexpected results.
0
 
Harry LeeCommented:
You can change the macro this way.

Sub pasteformula()
Dim RwCnt As Long, WS As WorkSheet
Set WS = Sheets("Block")
RwCnt = WS.Cells(Rows.Count, 3).End(xlUp).Row
If RwCnt < 7 Then
    MsgBox ("No Data Found!")
    Exit Sub
End If
    WS.Range("K7:K" & RwCnt).FormulaR1C1 = "= ""#RET"""
End With
End Sub
0
 
leezacAuthor Commented:
The both where similar but Harry's worked best for what I was trying to do.
0
 
leezacAuthor Commented:
OK - thanks
0
 
NorieData ProcessorCommented:
leezac

How did the code I posted not work?
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 4
  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now