2016-07-14 13 views

答えて

0

ハック - yの方法:

=IF(J3>50, J3, '') 

とJ4に記入し、その後、Q4までそれをコピーします。そして、あなたは、カスタマーを追加することができます

=AVERAGE(J4:Q4) 
+0

これは実際にはかなりスマートですが、問題は何千もの行を持っていることです。私はいつも行の右にそれをすることができますが、私はこれを行うための公式の方法を探しています。私は実際にこれを使って自分の問題を解決しようとしていますが、他の誰かが「本当の」答えを得ることを願っています。助けてくれてありがとう! – Aishvar

1

とJ5に記入

は、あなたのワークシートからそれを呼び出すことができ、あなたのワークシートにVBAで関数を作りました。お使いのExcelワークシートで

あなたは

=Average_Cells(first_cell_for_average, value_above) 

first_cell_for_averageを入力する必要があります - あなたは、関数が残りの部分を処理するA3を置くことができます。

value_above =あなたの投稿では50です。後で変更したい値に変更できます。

ファンクションコード:

Public Function Average_Cells(ByRef first_Cell As Range, larger_Than As Long) As Double 

' Row 3 in your post 
last_col = ActiveSheet.Cells(3, ActiveSheet.Columns.count).End(xlToLeft).Column 
first_Col = first_Cell.Cells(1, 1).Column 

For col = first_Col To last_col 
    If Cells(3, col).Value > larger_Than Then 
     GoTo Exit_For 
    End If 
Next 

Exit_For: 
Average_Cells = Application.WorksheetFunction.Average(Range(Cells(3, col), Cells(3, last_col))) 

End Function 
関連する問題