this is simple demo of what i want to do. I want to set a formula to a range of cells(eg. C1 to C10).
Range(\"C1\").Formula = \"=A1+B1\"
bu
Use FormulaR1C1:
Cells((1,3),(10,3)).FormulaR1C1 = "=RC[-2]+RC[-1]"
Unlike Formula, FormulaR1C1 has relative referencing.
Use this
Sub calc()
Range("C1:C10").FormulaR1C1 = "=(R10C1+R10C2)"
End Sub
I think this is the simplest answer possible: 2 lines and very comprehensible. It emulates the functionality of dragging a formula written in a cell across a range of cells.
Range("C1").Formula = "=A1+B1"
Range("C1:C10").FillDown
If you're trying to fill a column, you can do this on Excel 2010 with a single keyboard command:
Ctrl-D will either fill-across a selected row, or fill-down a selected array or column. Relative referencing is applied.
Range("C1:C10").Formula = "=A1+B1"
Simple as that.
It autofills (FillDown) the range with the formula.
I would update the formula in C1. Then copy the formula from C1 and paste it till C10...
Not sure about a more elegant solution
Range("C1").Formula = "=A1+B1"
Range("C1").Copy
Range("C1:C10").Pastespecial(XlPasteall)