2014-11-20 80 views
0

嗨,夥計們只是快速的問題。我正在嘗試在VBA excel中執行Counta/Countif公式。我正在使用的代碼如下。VBA CountA/countif加

Sub To_open 
    Dim x as Range 
    x =COUNTA('Tier 2'!C2:C1000)+COUNTA('Tier 3'!C2:C1000)+COUNTA('Tier 4'!C2:C1000)+COUNTA('Tier 5'!C2:C1000) 

    If x = 0 then 
    msgbox " No impact " 
    End If 
End sub 

該代碼是假設計數和coloumn下與值添加的行中,在所述4片並且如果它等於零然後顯示消息框。

+0

凡我已經把 「X =」,計算公式爲Excel公式。我正試圖將其轉換爲VBA語言。 – kay 2014-11-20 19:01:46

回答

2

一種方法是使用評估功能:

Sub To_open() 
    Dim n    As Long 

    n = Evaluate("COUNTA('Tier 2'!C2:C1000) + " & _ 
       "COUNTA('Tier 3'!C2:C1000) + " & _ 
       "COUNTA('Tier 4'!C2:C1000) + " & _ 
       "COUNTA('Tier 5'!C2:C1000)") 
    MsgBox n 
End Sub 
+0

完美謝謝:) – kay 2014-11-20 19:06:56

1

嘗試這樣做

x =Application.WorksheetFunction.COUNTA('Tier 2'!C2:C1000)+COUNTA('Tier 3'!C2:C1000)+COUNTA('Tier 4'!C2:C1000)+COUNTA('Tier 5'!C2:C1000))