これは、excel different SUM.IF array functionという質問の続きですが、解決済みとしてマークしたので、新しい質問を作成しました。
私が欲しかったのは、いくつかの値の明確な合計であり、@Marc のソリューションを実装しました。ただし、レポートの要件が変更されました。非表示のすべての値を除外する必要がありますが、元の計算方法は維持します。基本的に、SUBTOTAL(109, ref) が機能するのと同じ方法で機能を追加したいと考えています。
このために、セルに応じて 0 または 1 を返す単純な VBA 関数 CellIsNotHidden(Range) を作成しました。
したがって、私の最善の推測は次のような式になります。{=SUM(IF($B1:$B7<>$B2:$B8,D2:D8,0)*CellIsNotHidden(D2:D8))}
しかし、CellIsNotHidden は配列関数ではないため、この関数は機能しません。
どうすればこれを解決できますか?
事前に、ありがとう
グンナル
編集:
シンプルなVBA関数を含める必要があると思いました:
Function CellIsNotHidden(InputRange As Range)
If InputRange.Cells.Height = 0 Then
CellIsNotHidden = 0
Else
If InputRange.Cells.Width = 0 Then
CellIsNotHidden = 0
Else
CellIsNotHidden = 1
End If
End If
End Function