View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Don Guillett[_4_] Don Guillett[_4_] is offline
external usenet poster
 
Posts: 2,337
Default Filling Formula down???


To do it really fast try

sub putformulas
set mr=range("c2:c"&cells(rows.count,"c").end(xlup).ro w)
with mr
.formula="=$B2/SUMIF($A:$A,$A2,$B:$B)"
'.formula=.value'to leave just the values w/o the formula
end with
end sub


--
Don Guillett
SalesAid Software

"B Smith" wrote in message
ups.com...
I am trying to code a macro to fill a unique formula down until it
reaches the end of file, which will have changed every time I run the
macro. I can manually type in the formula and fill down- everything
works fine then. I haven't been able to get the macro to work yet,
though.

A B C
1 H H H <-- H denotes column heading
2 N 5 F F denotes formula I want to fill down
3 N 6 F N denotes name
4 N 7 F

Here's my function so far:


Function formula1()
Range("C2").Select
ActiveCell.Formula = "=$B2/SUMIF($A:$A,$A2,$B:$B)"'thanks to KDales for
formula

dim lastrow
Set EndCell = ActiveSheet.UsedRange
lastrow = EndCell(EndCell.Count).Row

Selection.AutoFill Destination:=Range("C2", "C" & cstr(lastrow)),
Type:=xlFillDefault
End Function


I always get an error when my macro calls this function: "Autofill
method of Range class failed." I know that there are many other posts
about filling down, but none of them seemed to help. My columns A, B,
and C will not be moving though the last row will vary every time, and
there will be no gaps in data in columns A or B. I'm using Excel XP on
Windows XP. I'm still a beginner at all this so thanks for your time.
Brett