2017-03-04 191 views
-1

我想添加到我的微距這個公式:VBA,SUM和COUNTIF公式在VBA

=SUM(D2:N2)+((COUNTIF(D2:N2,"GOLD")+COUNTIF(D2:N2,"PLATIN"))*1)+((COUNTIF(D2:N2,"PLPLUS")+COUNTIF(D2:N2,"AMBASS"))*2). 

代碼

Sheets("Water").Select 
ActiveCell.FormulaR1C1 = "=(SUMPRODUCT(IF(OR(RC[1]=R[-1]C[1],RC[3]=""GOLD"",RC[3]=""PLATIN""),""1"","")))""" 

,但它不工作.....

回答

0
Dim nr_rows As Long 

with Sheets("Water") 
nr_rows = Cells(Rows.Count, 2).End(xlUp).Row 

    for i = 2 to nr_rows 
     cells(i,1).Formula = "=SUM(D2:N2)+((COUNTIF(D2:N2,""GOLD"")+COUNTIF(D2:N2,""PLATIN""))*1)+((COUNTIF(D2:N2,""PLPLUS"")+COUNTIF(D2:N2,""AMBASS""))*2)" 
    next i 

end with 
+0

這是好的,但最後我想把總數..你有你的公式的解決方案..看下面我什麼想要做... – JohanEs

+0

'next i'後面可以放:'Cells(nr_rows + 1,1).Formula =「= sum(A2:A」&nr_rows&「)」' – BOB

+0

它不起作用, A列中沒有值。我想要A列中出現的結果 – JohanEs